Tag: asp.net mvc 3

什么时候在ASP.NET MVC中使用ViewBag / ViewData是“可接受的”?

我意识到最好的做法是使用强类型视图并在ViewModel中传递所有需要的数据,但我很好奇是否有实际上被认为是在ViewBag / ViewData中传递数据的“最佳实践”。 ViewBag / ViewData在什么情况下首选将数据传递给视图? 更新 很高兴听到每个人都为ViewBag / ViewData提出的各种用途。 我们可能永远不会达到“最佳实践”,但很高兴看到人们提出的依赖于ViewBag / ViewData的不同解决方案。

如何将viewbag显示为html?

好的,对于ASP.Net MVC来说还是新手,所以如果这是一个愚蠢的问题我很抱歉,但我如何将ViewBag的值显示为HTML。 例如,如果ViewBag.SomeMessage包含以下文本: Test Test Test Test Test TEST 我将如何实际将页面呈现为普通HTML? 或者有一种更简单的方法来实现这一点,我完全失踪了? 干杯!

有没有办法在ASP.NET MVC 3 RC2中禁用JSON ModelBinder?

在ASP.NET MVC 3 RC2中,如果Content-Type设置为application/json ,则默认的ModelBinder将自动解析请求主体。 问题是,这会在流的末尾留下Request.InputStream 。 这意味着如果您尝试使用自己的代码读取输入流,则首先将其重置为开头: // client sends HTTP request with Content-Type: application/json and a JSON // string in the body // requestBody is null because the stream is already at the end var requestBody = new StreamReader(Request.InputStream).ReadToEnd(); // resets the position back to the beginning of the input stream var reader […]

ASP.NET MVC3和Facebook集成

我正准备使用MVC3开始一个新的ASP.NET项目,由于一些要求是关于facebook集成的,我需要你对以下问题的建议: 1-将会员用户连接到他们的Facebook帐户是否可以实现,因此每当用户在我的网站上分享/添加/评论某个活动时,我可以使用他/她的Facebook帐户自动分享这些操作? 2-当用户在我的网站上创建Facebook事件时创建Facebook事件的能力,以及如果他/她更新事件信息,我也可以在Facebook上更新它们。 3-这可以通过Facebook Connect实现,还是仅用于使用Facebook帐户validation用户? 4-如何使用我的MVC解决方案中的Graph API,我知道Codeplex http://facebooksdk.codeplex.com上有一个Facebook C#SDK,但它是否满足我提到的需求。 提前致谢。

从Html.DropdownListFor … MVC3获取文本

我有一个模特: public class DocumentModel { public int TypeID { get; set; } public List DocumentTypes { get; set; } } 我有一个观点: @Html.DropDownListFor(x => x.TypeID, Model.DocumentTypes, “- please select -“) 我填充了我的下拉 var model = new DocumentModel(); model.DocumentTypes = GetDocumentTypes(); private static List GetDocumentTypes() { var items = new List { new SelectListItem {Text = @”Text #1”, […]

使用属性validation

我有,比方说,这个简单的类: public class User { [Required(AllowEmptyStrings = false, ErrorMessage=”EmailIsRequired”] public string EmailAddress { get; set; } } 我知道如何在System.ComponentModel.DataAnnotations命名空间中使用Validator.TryValidateProperty和Validator.TryValidateObject。 为了使其工作,您需要要validation的对象的实际实例。 但是现在,我想要在没有User类实例的情况下validation某个值,例如: TryValidateValue(typeof(User), “EmailAddress”, “test@test.com”); 我的目标是在实际必须实例化对象本身之前测试一个值(原因是我只允许创建有效的域实体)。 所以实际上我想在类而不是实例上使用validation属性。 有什么想法可以做到吗? 谢谢! 编辑:同时我决定不使用数据注释,而是使用http://fluentvalidation.codeplex.com,以便validation移出实体之外。 这样,可以从实体内部以及我的命令处理程序中触发validation。 由于流利的符号,validation本身看起来更具可读性。

Master-Detail使用Razor,ASP.NET MVC 3和.NET 4.0创建视图

我是.NET的新手,如果我有任何愚蠢的错误,请耐心等待我。 我在.NET 4.0中使用ASP.NET MVC 3 我想为具有子模型的模型创建一个“创建”视图。 此视图应包含子模型的部分 “创建”视图,我将使用以下简单示例进行说明: 人物模型 class Person { public string Name { get; set; } public Address { get; set; } } 地址模型 class Address { public string City { get; set; } public string Zip { get; set; } //A List for creating a item in the view //containing cities […]

如何生成OAuth客户端标识符和客户端密钥?

我正在实施一个OAuth2提供程序,我想在我的网站的某个地方开发人员登录并注册第三方应用程序。 但我对如何生成应用程序的客户端标识符和客户端密钥有疑问。 它们应该是唯一的随机代码,还是必须向客户提供一些有意义的信息? 我想他们可能是随机的。 好吧,我一直在寻找有关如何做到这一点的最佳实践,但没有找到那么多。 所以任何答案都将不胜感激。 PD:我在.NET MVC3上开发了一个名为DotNetOpenAuth的库。

导出到MVC3 ASP.net中的excel文件

我在Controller中有以下代码,并希望将其全部保存到excel文件中,但我无法让浏览器向我显示文件保存对话框。 public ContentResult Export(…) { StringBuilder sb = new StringBuilder(); sb.Append(“”); //write column headings sb.Append(“”); foreach (System.Data.DataColumn dc in dt.Columns) { sb.Append(“” + dc.ColumnName + “”); } sb.Append(“”); //write table data foreach (System.Data.DataRow dr in dt.Rows) { sb.Append(“”); foreach (System.Data.DataColumn dc in dt.Columns) { sb.Append(“” + dr[dc].ToString() + “”); } sb.Append(“”); } sb.Append(“”); this.Response.AddHeader(“Content-Disposition”, “Employees.xls”); […]

下载mvc3编辑表单

这可能很简单,但我似乎无法自己解决。 我创建了一个简单的数据库和实体模式,看起来像这样 我正在尝试创建一个允许我添加新订单的创建表单。 我总共有3个表,所以我要做的是让表格允许此人输入订单日期,还有一个下拉列表,允许我从产品表中选择产品 我希望能够创建一个Add或Edit视图,允许我将OrderDate插入OrderTable,并将OrderID和选定的ProductID插入OrderProduct。 我需要在这做什么步骤。 我创建了一个OrderController并勾选了“Add Actions”,然后添加了一个看起来像这样的Create View @model Test.OrderProduct @{ ViewBag.Title = “Create2”; } Create2 @using (Html.BeginForm()) { @Html.ValidationSummary(true) OrderProduct @Html.LabelFor(model => model.OrderID) @Html.EditorFor(model => model.OrderID) @Html.ValidationMessageFor(model => model.OrderID) @Html.LabelFor(model => model.ProductID) @Html.EditorFor(model => model.ProductID) @Html.ValidationMessageFor(model => model.ProductID) } @Html.ActionLink(“Back to List”, “Index”) 这将创建包含OrderID和ProductID的文本框但不包含日期的视图。 我的控制器CreatePost还没有改变 [HttpPost] public ActionResult Create(FormCollection collection) { try { […]