ASP.NET 5 MVC(Visual Studio 2015):一个名为Inject的关键字
发布时间:2020-12-16 09:41:31 所属栏目:asp.Net 来源:网络整理
导读:我刚安装了visual studio 2015并玩了ASP.NET 5模板(MVC),我看到了一个名为inject的关键字,它已在视图中使用过.是依赖注入,如果是,它是如何工作的?假设以下代码: [Authorize]public class AccountController : Controller{ private readonly UserManagerApp
我刚安装了visual studio 2015并玩了ASP.NET 5模板(MVC),我看到了一个名为inject的关键字,它已在视图中使用过.是依赖注入,如果是,它是如何工作的?假设以下代码:
[Authorize] public class AccountController : Controller { private readonly UserManager<ApplicationUser> _userManager; private readonly SignInManager<ApplicationUser> _signInManager; private readonly IEmailSender _emailSender; private readonly ISmsSender _smsSender; private readonly ApplicationDbContext _applicationDbContext; private static bool _databaseChecked; public AccountController( UserManager<ApplicationUser> userManager,SignInManager<ApplicationUser> signInManager,IEmailSender emailSender,ISmsSender smsSender,ApplicationDbContext applicationDbContext) { _userManager = userManager; _signInManager = signInManager; _emailSender = emailSender; _smsSender = smsSender; _applicationDbContext = applicationDbContext; } // // GET: /Account/Login [HttpGet] [AllowAnonymous] public IActionResult Login(string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; return View(); } ... } 登录视图有一个注入关键字,如: @model LoginViewModel @inject SignInManager<ApplicationUser> SignInManager @{ ViewData["Title"] = "Log in"; } 但是,我没有在其他视图中看到这一点,并且应用程序中没有Ninject和Unity的痕迹.这是什么?一个新的惊人功能? 解决方法
Asp.net 5内置了依赖注入功能,并且附带了很多功能.在您的示例中,您正在注入SignInManager< ApplicationUser>的实例.将SignInManager命名为剃刀视图.
您现在可以像使用Model属性一样使用它:@ SignInManager.Method() 有关更多信息,请参阅此文章:http://blog.tomasjansson.com/asp-net-5-ioc-and-dependency-injection/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-3 – 使用IEnumerable在域模型和视图模型之间进
- asp.net-core – CoreCLR中的MD5CryptoServiceProvider的替
- asp.net – Request.Url.AbsoluteUri和重写的URL
- 双应用程序域在ASP.NET 4应用程序
- 使用ASP.net和Access数据库保护SQL Injection的网站
- asp.net-mvc – asp.net mvc 3预选Html.DropDownListFor不能
- asp.net-mvc – HttpPost和HttpGet属性在MVC:为什么使用Ht
- ASP.NET Core在支付宝小程序中使用signalR
- asp.net-mvc-3 – WebAPI PUT / POST中的部分实体更新
- asp经典 – ASP检查请求方法