【c# – 找不到ASP.NET Web API路由控制器】教程文章相关的互联网学习教程文章

c# – 在ASP.NET Core中更改控制器路由【代码】

所以我有一个HomeController,要访问它以及我必须输入url.com/home/action的动作. 是否有可能将此更改为url.com/anothernamethatpointstohomeactually/action?解决方法:我建议你使用属性路由,但当然这取决于你的场景.[Route("prefix")] public class Home : Controller {[HttpGet("name")]public IActionResult Index() {}}这将在url.com/prefix/name上找到 属性路由有很多选项,一些示例:[Route("[controller]")] // there are pl...

c# – 控制器中自定义方法的WebApi路由【代码】

我最近选择了ASP.NET Web API的东西,虽然我已经破解了授权和身份验证,但我无法破解路由.这是一场噩梦! 我用AuthenticationController创建了一个Authenticate()方法.我将[HttpGet]属性添加到Authenticate(),但每当我点击API时,我得到404. 这是我目前的WebApiConfig: – public static void Register(HttpConfiguration config) {config.Routes.MapHttpRoute("DefaultApiWithId", "{controller}/{id}", new { id = RouteParameter....

c# – 如何使用引用的程序集进行控制器脚手架【代码】

我有一个包含一些模型类和一个DbContext类的类库(所有这些类都是公共的).该类库由MVC-5应用程序引用. 是否可以使用该引用类库中的模型类来构建该MVC-5应用程序中的控制器? 当我使用控制器 – 添加 – 控制器 – 带视图的MVC控制器时,使用实体框架然后在对话框中,模型类和数据上下文类的组合框都不包含任何项.当我从引用的类库中填写类的完全限定名称时,仍然禁用“添加”按钮.我究竟做错了什么? 解决方法:通过一些调整,您可以使用...

c# – 来自非控制器类的ActionResult

我已经决定我的控制器变得有点凌乱,并决定采用我在WebAPI项目中使用的管道式系统.管道由动作组成,这些动作越来越普遍,即:ViewAccountDetailsAction> AccountAction> AuthenticatedAction> EmptyAction. Actions按继承顺序添加到pipleline,并为不同的场景公开成员或抽象方法. 我的问题在于如何从管道元素返回视图.在WebAPI示例中,它就像返回一个不必执行任何视图呈现的IHttpActionResult一样容易,但是,MVC需要以不同的方式呈现其响...

c# – 在dotnet中的控制器中包含自定义类时调用工厂【代码】

我有一个Web服务(dotnet核心1.1). 我已经创建了一个类,我希望通过依赖注入在我的控制器的构造函数中显示.这解决了…… Startup.cs有这样的东西……public void ConfigureServices(IServiceCollection services) {// ... stuff ...services.AddSingleton<IMyClassFactory, MyClassFactory>(); }而MyController.cs有这样的东西:public MyController(IConfigurationRoot config, ILogger<MyController> logger, IMyClassFactory mcf)...

c# – 如何根据cookie值将用户对象从启动类注入到控制器构造函数中【代码】

我正在使用CookieAuthentication来实现自定义登录,app.UseCookieAuthentication(new CookieAuthenticationOptions() {AuthenticationScheme = "MyCookieMiddlewareInstance",LoginPath = new PathString("/Account/Unauthorized/"),AccessDeniedPath = new PathString("/Account/Forbidden/"),AutomaticAuthenticate = true,AutomaticChallenge = true,CookieName="Id", });我的应用程序中的每个控制器都期望一个用户对象,可以使用...

c# – 单元测试依赖于UserManager的控制器的最佳实践?【代码】

我有一个带有以下签名的控制器:[Route("api/[controller]")] [ApiController] public class UsersController : ControllerBase {private ILogger<UsersController> _logger;private readonly UserManager<IdentityUser> _usermanager;public UsersController(ILogger<UsersController> logger, UserManager<IdentityUser> usermanager){_usermanager = usermanager;_logger = logger;}[HttpGet("{_uniqueid}")]public async Task<...

c# – Fluent Security – 配置参数化控制器操作【代码】

我做了很多研究并测试了FluentSecurity库的1.4和2.0版本,我似乎无法使用配置模式:configuration.For<MyController>(x => x.GetCustomer()).RequireRole(appRoles);当我的控制器动作需要一个参数,如:public ActionResult GetCustomer(int customerID)目前是否支持此类配置?如果是这样,我如何针对具有必需参数的操作实现角色要求?解决方法:我在问同样的问题.目前,您可以传递参数的默认值.configuration.For<HomeController>(x =>...

c# – 使用ViewModel更新EF实体的MVC控制器发布方法【代码】

在阅读了最佳实践后,我现在使用的是一个为每个视图定制的viewmodel,我的控制器方法将viewmodels传递给视图,然后更新db. 我使用LINQ投影使我的GET方法正常工作,但我不知道在POST方法中该怎么做.如果我的viewmodel只包含其视图正在更新的属性,但数据库中已存在该特定键的条目,那么如何使用viewmodel属性更新我的EF模型而不必每次都获取EF模型中的每个属性? 这是我的代码: 视图模型public class GeneralViewModel {public string Ti...

c# – 使用MVC控制器进行Web API的缺点【代码】

在我们的应用程序(单页面应用程序)中,我们使用MVC控制器(Action方法作为API)进行CRUD操作.我觉得它错了. 谁能告诉我它是否正确? 例如:- 我有一个API控制器说: – public class MockAPIController : ApiController{// GET api/MockAPI/5public ClassA GetSomething(int id){return new ClassA();}}这可以使用/ api / MockAPI / GetSomething / 1从客户端调用.同样,如果我创建MVC控制器,如: – public class MockAPIController :...

c# – Identity 2.0用户标识在MVC 5控制器初始化程序中为空【代码】

我有一个使用Asp.Net Identity 2.0的MVC 5项目.我也在使用通用的存储库模式.作为数据库模式的一部分,我有各种表的字段,用于存储插入/更新/删除用户的用户ID.因此,我想将用户对象或用户id至少传递给修改记录时要使用的通用存储库. 但是,由于我无法直接在存储库类中访问该标识,因此我尝试在存储库实例化时传递它.它看起来像这样:using System.Data.Entity; using System.Threading.Tasks; using System.Net; using System.Web.Mvc; ...

c# – MVC5基本控制器,用于设置应始终执行的操作【代码】

我正在使用MVC5项目.在这个项目中,我总是希望在客户的每一个响应中做一些事情. 例如,我总是希望查看用户是否已登录,如果是,则将用户名和他们的id放入ViewBag变量中以便在.cshtml文件中使用. 我有一个所有其他控制器继承的基本控制器.我的第一个想法是在该控制器的构造函数中执行这些操作,但这不起作用,因为User变量尚不存在. 还有另一种方法可以做到这一点,而不是在每个Action中调用Setup()方法吗?我可以在返回ActionResult之前监...

c# – 如何将配置传递给ASP.NET MVC6中的非控制器类【代码】

我正在使用MVC6开发一个应用程序.我可以在启动文件中读取JSON配置,并将依赖项注入控制器中. 现在,我的要求是我想访问非控制器的类中的配置.在这种情况下我不能使用构造函数DI.这些类驻留在MVC6应用程序的某个文件夹中,但它们不是模型或控制器类. 在这种非控制器类中访问配置的最佳方法是什么? 谢谢. 更新: 只是为了澄清 – 我不能在这些课程中使用DI. 这些类仅在需要时基于某些条件进行实例化,并且在它们上调用方法.我需要从这些...

c# – 在表单发布时将下拉列表中的选定值从视图传递到控制器【代码】

我有这些模型和视图模型.当表单发布以创建条目时,在控制器POST方法中,WardID和DoctorID的选定值变为零. 查看代码@model NewClient.HospitalMgt.ViewModel.PatientAdmissionViewModel .... @using (Html.BeginForm()) {@Html.AntiForgeryToken()@Html.ValidationSummary(true)<fieldset><div class="editor-label">@Html.LabelFor(model => model.Admission.WardID, "Ward")</div><div class="editor-field">@Html.DropDownList("W...

c# – 如何使用不同的构造函数参数重用相同的控制器类【代码】

我有一个控制器接受一些依赖作为构造函数参数:public class AccountsController : ApiController {public AccountsController(IAccountsService accountService){this.accountService = accountService;}// actions }public interface IAccountsService {IEnumerable<AccountDto> GetAccounts(string userName); }要解决此依赖关系,我使用Unity.WebApi包:public static class WebApiConfig {public static void Register(HttpCon...