Tag: asp.net mvc 3

提交表单时获取查询字符串值… MVC3

在我的MVC3应用程序中,如果我在URL中键入查询字符串值并按Enter键,我可以获得我输入的值: localhost:34556/?db=test 我的默认操作将触发: public ActionResult Index(string db) 变量db中有“test”。 现在,我需要提交一个表单并读取查询字符串值,但是当我通过jQuery提交表单时: $(‘#btnLogOn’).click(function(e) { e.preventDefault(); document.forms[0].submit(); }); 以下是我发送的表格: @using (Html.BeginForm(“LogIn”, “Home”, new { id=”form1″ }, FormMethod.Post)) inheritance人的行动: [HttpPost] public ActionResult LogIn(LogOnModel logOnModel, string db) { string dbName= Request.QueryString[“db”]; } 变量dbName为null,因为Request.QueryString [“db”]为null,因此传入的变量db也是如此,我不知道为什么。 在提交表单后,有人可以帮我获取查询字符串变量吗? 谢谢

使用Ajax在ASP.Net MVC3 Razor中渲染局部视图

我希望获得的基本function是在选择下拉列表项时更新表的内容。 当用户进行新选择并从数据库中检索新信息并重新填充表时,这将更新。 值得注意的是,我希望.change()使用的DropDownListFor不包含在AjaxForm中,而是出现在页面的其他地方(不可否认的是另一种forms) 为了达到这个目的,我看了一下这个问题: 在ASP.Net MVC3 Razor中动态渲染局部视图,使用Ajax调用Action ,它可以很好地按照我想做的方式进行。 到目前为止,我有一个控制器方法来处理为局部视图填充自定义视图模型: [HttpPost] public ActionResult CompanyBillingBandDetails(int id = 0) { var viewModel = new BillingGroupDetailsViewModel(); var billingGroupBillingBands = _model.GetAllRecordsWhere(x => x.BillingGroupId == id).ToList(); foreach (var band in billingGroupBillingBands) { viewModel.BillingBands.Add(band.BillingBand); } return PartialView(“BillingGroupDetailsPartial”, viewModel); } ViewModel我希望填充每个调用: public class BillingGroupDetailsViewModel { public List BillingBands { get; set; } } […]

使用AttributeRouting隐藏URL中的区域

我们使用Areas来对使用AttributeRouting在ASP.NET MVC3中编写的API进行版本化以定义我们的路由。 现在我们有一个“v1”区域,这是我们的第一个API版本。 当我们到达v2时,我们将复制v1并进行修改。 我想对网站使用相同的版本,我不希望路由中的/ v1。 我的问题是,我如何隐藏我的URL中的区域,以便我可以打电话 mywebsite.com/Users/1 代替 mywebsite.com/v1/Users/1 这是我在控制器中的内容 [RouteArea(“/”)] public class HomeController : Controller { // // GET: /v1/Home/ [GET(“”)] public ActionResult Index() { return View(); } } 这是我尝试访问mywebsite.com/时得到的 提前致谢!

ASP.NET MVC:编辑时忽略字段

由于我正在学习ASP.NET MVC,我遇到了一个问题并遇到了一些麻烦 我正在尝试创建一个简单的博客,只是为了测试我到目前为止学到的东西。 但是当谈到编辑和离开一个领域我遇到了问题。 我正在尝试在我的博客上编辑已提交的post,该post包含几个字段:提交的标题,标题,消息,作者和日期,不应该被编辑,只是保持原样。 这是一些代码: 我的post模型: namespace MyBlock.Models { public class Post { public int Id { get; set; } [Required] public string Author { get; set; } [Required] public string Headline { get; set; } [Required] public string Message { get; set; } public DateTime Date { get; set; } } } 我的编辑: […]

循环引用和ScriptIgnore问题

我有几个相互引用的BusinessObject类,我需要在JsonResponse中序列化一个并将其返回到我的视图中。 我一直得到循环引用exception,我无法摆脱它。 我已将[ScriptIgnore()]装饰器放在每个不是简单数据类型属性的属性上,但我仍然得到exception。 我无法弄清楚问题出在哪里,因为我阻止了序列化器几乎所有的东西,它仍然在炸毁我。 有没有办法看到它们当前状态的序列化对象是什么? [HttpPost] public JsonResult GetAnalysisInfo(int id) { ProjectContext myDB = db; SearchAnalysis searchanalysis = SearchAnalysis.Find(myDB, id); //searchanalysis.Results = searchanalysis.SearchResultsPrototype(myDB); return this.Json(searchanalysis); } 更新 我也试过实现ISerializable无济于事。 我的GetObjectData非常简单: public void GetObjectData(SerializationInfo info, StreamingContext context) { info.AddValue(“SearchAnalysisId”, this.SearchAnalysisId); info.AddValue(“Created”, this.Created); } 仍然收到CircularRefernce错误。 DateTime数据类型不会导致序列化问题吗?

以编程方式添加数据注释

我正在使用.NET 4的asp mvc3应用程序。 但是,我想要使用的模型是在使用.NET 3.5的类库中,并且无法更改。 我可以以编程方式将.NET 4 数据注释添加到我的模型中的某些属性中,以便进行一些简单的validation吗?

System.Web.Mvc.HtmlHelper 不包含的定义

我正在尝试使用Steve Sanderson关于编辑可变长度列表的博客文章 。 我已经通过NuGet包管理器安装了dll,并确保命名空间位于Views/web.config文件中。 但是,当我尝试编写using语句时,我出现以下错误。 System.Web.Mvc.HtmlHelper does not contain a definition for ‘BeginCollectionItem’ and no extension method ‘BeginCollectionItem’ accepting a first argument of type ‘System.Web.Mvc.HtmlHelper’ could be found (are you missing a using directive or an assmebly reference 查看/ Web.config中 部分视图(更新) @model Monet.Models.AgentRelationshipCodes @using (Html.BeginCollectionItem(“AgentRelationshipCodes”)) { @Html.EditorFor(model => model.EffectiveDate, “NullableDate”, new { @class = “relCodeDate2” […]

如何在MVC Razor DropDownList中使用Html.Raw?

我在MVC Razor中使用DropDownList,并且遇到自动HTML编码问题。 我的代码看起来像: @Html.DropDownList(“MyList”, Model.DropdownNamesAndValues) 哪个工作正常,但DropdownNamesAndValues列表中的SelectListItem.Text属性可能包含HTML粗体或斜体标记。 这些目前正在下拉列表中出现(例如hello world )。 我想知道怎么做的是: 如何将@ Html.Raw应用于每个SelectListItem.Text属性? 如果不这样做,是否有一种简单的方法来删除HTML标签? 基本上是任何东西,而不是像现在一样按字面显示它们。

将模型从一个动作传递到同一控制器中的另一个动作

我试图将我的模型List statementList从一个动作传递到另一个动作,但我在第二个控制器中接收空值。 请在这里建议有什么问题。 甚至试过: return RedirectToAction(“WriteInTemplate”, new { statementList = statementList }); 请帮忙。 public ActionResult SendPdfStatement(string InvoiceNumber) { try { InvoiceNumber = InvoiceNumber.Trim(); ObjectParameter[] parameters = new ObjectParameter[1]; parameters[0] = new ObjectParameter(“InvoiceNumber”, InvoiceNumber); List statementList = new List(); statementList = _db.ExecuteFunction(“uspInvoiceStatement”, parameters).ToList(); //WriteInTemplate(statementList); return RedirectToAction(“WriteInTemplate”, statementList ); } catch (Exception e) { InvoiceSearchTool.Models.udtExceptionTable exception = […]

HTTP GET请求中的MVC3模型绑定?

没有定制,我可以在MVC 3中做这样的事情吗? [HttpGet] public ViewResult MyAction(ViewModel model) { // Do stuff return View(“ViewName”, model); } 我这样做的原因是作为工作流程的一部分在不同页面之间传递数据。 (即当用户在步骤1中查看所需内容时,将表单数据传递给第2步…)