Tag: asp.net mvc

ASP.Net MVC – 模型集合没有填充回发

我有一个ASP.Net MVC应用程序,其中包含一个包含集合的多层深度模型。 我相信创建对象的视图都是正确设置的,但是当我将表单发布到服务器时,它只是不填充模型中的集合。 我有一个数据,可以在类层次结构中找到: person.PersonDetails.ContactInformation[0].Data; 此类结构由LinqToSQL创建,ContactInformation类型为EntitySet 。 要创建视图,我传递以下内容: return View(person); 在视图中我有一个表单,其中包含一个文本框,其名称与上述字段相关联: 我的控制器中的post方法如下: [AcceptVerbs(HttpVerbs.Post)] public ActionResult Create (Person person) { //Do stuff to validate and add to the database } 正是在这一点上我迷失了人.PersonDetails.ContactInformation.Count()== 0。 因此,ModelBinder创建了一个ContactInformation对象,但没有填充它应该在索引0处保存的对象(即ContactData)。 我的问题有两个方面:1。我采取了正确的方法……即这应该有效吗? 2.关于为什么它可能无法填充ContactInformation对象的任何想法? 非常感谢,理查德

如何使用Razor通过循环正确生成引导网格?

我使用ASP.NET MVC和bootstrap。 我在集合中有很多对象(> 2),每个需要一个 但是连续只有2个 。 如何使用循环来实现这个目标? 有一种方法,但我正在寻找更好的东西: @model List @using (Html.BeginForm(“ActionName”, “ControllerName”)) { @for (int i = 0; i < Model.Count; i++) { if (i % 2 != 0) { @Html.TextBoxFor(o => o[i].Value) } else { @Html.TextBoxFor(o => o[i].Value) } } }

上载Excel工作表并将数据导入SQL Server数据库

我正在开发这个简单的应用程序来上传Excel文件( .xlsx )并将该Excel工作表中的数据导入.NET中的SQL Server Express数据库 我在浏览并选择要执行此操作的文件后单击导入按钮时使用以下代码。 protected void Button1_Click(object sender, EventArgs e) { String strConnection = “Data Source=.\\SQLEXPRESS;AttachDbFilename=’C:\\Users\\Hemant\\documents\\visual studio 2010\\Projects\\CRMdata\\CRMdata\\App_Data\\Database1.mdf’;Integrated Security=True;User Instance=True”; //file upload path string path = FileUpload1.PostedFile.FileName; //string path=”C:\\ Users\\ Hemant\\Documents\\example.xlsx”; //Create connection string to Excel work book string excelConnectionString = @”Provider=Microsoft.ACE.OLEDB.12.0;Data Source=” + path + “;Extended Properties=Excel 12.0;Persist Security Info=False”; //Create Connection […]

MVC ActionLink从当前url添加所有(可选)参数

非常有名的ActionLink : 现在,此链接位于我的详细信息视图中。 索引视图是搜索页面。 其URL如下所示: http://localhost:50152/2011-2012/Instelling/Details/76?gemeente=Dendermonde&postcode=92**&gebruikerscode=VVKSO114421&dossiernr=114421%20&organisatie=CLB 如您所见,相当多的参数。 显然我想在返回Index页面时保留所有这些参数,所以我需要在ActionLink添加它们。 现在,我已经厌倦了手动操作,它可以1,但不适用于6.这应该会更容易。 问题:如何将当前URL的所有参数作为可选的RouteValues返回到ActionLink 。 我一直在寻找Request.QueryString 。 它必须是那样的东西。 我正在考虑在Global.asax中编写一些静态方法来完成工作,但还没有运气。 也许有一种简单的方法可以做到这一点,我不知道呢? 编辑:这是我想出的(哪个有效) 在global.asax中: public static RouteValueDictionary optionalParamters(NameValueCollection c) { RouteValueDictionary r = new RouteValueDictionary(); foreach (string s in c.AllKeys) { r.Add(s, c[s]); } return r; } Details.aspx: 我最好把这段代码放在哪里? 不在Global.asax我猜… 编辑2: using System; using System.Web.Mvc; namespace MVC2_NASTEST.Helpers { public static class […]

Angular路由模板URL是否支持ASP.Net MVC 5项目中的* .cshtml文件?

我正在研究MVC 5项目。 当我在我的视图中使用html页面时,它会加载该页面,但是当我使用.cshtml页面时,它不会加载视图。 出现空白页面。 $urlRouterProvider .otherwise(‘/app/dashboard’); $stateProvider .state(‘app’, { abstract: true, url: ‘/app’, templateUrl: ‘tpl/app.html’ }) .state(‘app.dashboard’, { url: ‘/dashboard’, templateUrl: ‘tpl/app_dashboard.html’ }) 请指导我如何使用cshtml文件或最佳方法。

如何使用Asp.Net Core实现基于权限的访问控制

我正在尝试使用aspnet核心实现基于权限的访问控制。 为了动态管理用户角色和权限(create_product,delete_product等),它们存储在数据库中。 数据模型类似于http://sofzh.miximages.com/c%23/CHMPE.png 在aspnet核心之前(在MVC 5中)我使用如下的自定义AuthorizeAttribute来处理问题: public class CustomAuthorizeAttribute : AuthorizeAttribute { private readonly string _permissionName { get; set; } [Inject] public IAccessControlService _accessControlService { get; set; } public CustomAuthorizeAttribute(string permissionName = “”) { _permissionName = permissionName; } public override void OnAuthorization(AuthorizationContext filterContext) { base.OnAuthorization(filterContext); var user = _accessControlService.GetUser(); if (PermissionName != “” && !user.HasPermission(_permissionName)) { […]

检测ASP.NET MVC上的会话到期

我建立了一个购物车,使用会话状态来保存购物车数据,同时用户正在浏览商店。 我有一个问题,如果我在购物车的step1上长时间打开浏览器窗口,然后按“转到第2步”,我的操作会抛出错误,因为step2操作假定会话未过期且ShopCart对象处于正确状态。 我希望这个场景对我的用户更好,但我想我需要以某种方式检测会话是否已过期,以便在下一个请求时我可以将它们抛给Step1。 我发现以下代码声称要解决问题,但它对我不起作用。 IsNewSession条件为真,但条件 if ((null != sessionCookie) && (sessionCookie.IndexOf(“ASP.NET_SessionId”) >= 0)) { // handle expired session } 始终返回false,它永远不会处理无效会话。 我糊涂了。 这在ASP.NET(和MVC)中是否可行?

ASP.net Identity 2.0退出另一个用户

我正在使用asp.net MVC和ASP.net Identity 2.0。 在我的网站上Admin可以选择禁止用户,我希望当用户被禁止他自动从网站注销时。 我知道我可以通过电话退出当前用户 AuthenticationManager.SignOut(); 但是可以注销另一个用户吗? 或者可能会缩短他的课程? 还是什么? 我知道我可以对控制器进行全局过滤,禁止禁止用户访问但是filter会针对每个用户运行,所以我对这个解决方案并不满意。

用于generics类型的ASP.NET MVC模型绑定器

是否可以为generics类型创建模型绑定器? 例如,如果我有一个类型 public class MyType 有没有办法创建一个适用于任何类型的MyType的自定义模型绑定器? 谢谢,内森

具有匿名类型模型类的剃刀视图。 有可能的?

我想使用razor模板创建一个视图,但我不想为模型编写一个类,因为在许多视图中我将有许多查询将返回不同的模型。 例如,我有一个linq查询: from p in db.Articles.Where(p => p.user_id == 2) select new { p.article_id, p.title, p.date, p.category, /* Additional parameters which arent in Article model */ }; 我需要为此查询编写一个View。 此查询返回文章。 现在我不知道应该如何看起来像模型定义。 我试着用这个定义: @model System.Collections.IEnumerable 但后来我有一个错误,而不是文件在对象类型中不存在: * CS1061:’object’不包含’addition_field’的定义,并且没有扩展方法’addition_field’接受类型’object’的第一个参数可以找到* 这是我的模型,我不想写下一个模型。 当然