小编Dar*_*rov的帖子

通过ajax发送请求时自动呈现部分

我试图找出当通过ajax发出请求时如何自动将视图呈现为部分(无母版页).

我想避免的是在每个可以返回ajax的控制器方法中使用以下代码(因为那不是很干):

return Request.IsAjaxRequest() ? PartialView(model) : View(model)
Run Code Online (Sandbox Code Playgroud)

我的第一个想法是在方法中将检查添加到我的基本控制器中View.但是view方法返回一个View(PartialView不继承).这样就失败了.

我的下一次尝试是尝试在我的自定义剃刀视图引擎中进行检查,如果它是ajax请求,则简单地删除母版页.但那也失败了.

我能做的是创建一个ViewOrPartial包含检查并相应返回结果的新方法.

你会怎么做的?

ajax asp.net-mvc partial razor asp.net-mvc-3

2
推荐指数
1
解决办法
1660
查看次数

asp.net mvc主人详细信息

我想使用ASP.NET MVC-Entity Framework为订单输入创建一个网页.此页面包含订单和订单输入信息.对于每个订单,我可以有多个订单详细信息.如果您知道如何使用ASP.NET MVC-Entity Framework执行此主/详细信息,请告诉我.用户应该能够输入包含一个或多个订单明细的新订单.这应该在一个页面上

Plz可以提供一个有效的例子

asp.net-mvc master-detail

2
推荐指数
1
解决办法
5654
查看次数

.NET 4.0上的ASP.NET MVC2:[ValidateInput(false)]足够了吗?

美好的一天!

我打算将我的ASP.NET MVC 2应用程序升级到.NET 4.0,并且有几个问题:

  1. 正在[ValidateInput(false)]采取行动足以接受HTML,或者我需要<httpRuntime requestValidationMode="2.0"/>按照此处所述进行设置:ASP.NET 4 Breaking Changes

  2. 如果我将ASP.NET MVC升级到版本3(除了升级到.NET 4.0)之外它将如何工作?

提前致谢!

asp.net request-validation asp.net-mvc-3 asp.net-mvc-2

2
推荐指数
1
解决办法
763
查看次数

在Razor中创建EditorTemplates时出错

我在ASP.NET MVC 3中有一个完美的ascx编辑器模板,并尝试将其转换为剃刀:

ASCX:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Inventory.Models.ProductCategory>" %>

<%= Html.Telerik().DropDownList()
    .Name("ProductCategory")
        .BindTo(new SelectList((IEnumerable)ViewData["ProductCategories"], "Id", "Name"))
%>
Run Code Online (Sandbox Code Playgroud)

剃刀:

@inherits  System.Web.Mvc.ViewUserControl<Inventory.Models.ProductCategory>

@(Html.Telerik().DropDownList()
    .Name("ProductCategory")
        .BindTo(new SelectList((IEnumerable)ViewData["ProductCategories"], "Id", "Name"))
)
Run Code Online (Sandbox Code Playgroud)

我重命名了ascx,因此当ASP.NET选择编辑器模板时它不会发生冲突,我保存了带有cshtml扩展名的razor文件.但在运行时,我收到此错误:

CS0115: 'ASP._Page_Views_Shared_EditorTemplates_ProductCategory_cshtml.Execute()': no suitable method found to override

Line 44:         }
Line 45:         
Line 46:         public override void Execute() {
Line 47: 
Line 48: WriteLiteral("\r\n");
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?是不是Razor EditorTemplates被ASP.NET MVC认可?

asp.net-mvc telerik editortemplates razor asp.net-mvc-3

2
推荐指数
1
解决办法
4095
查看次数

比较两个列表并返回常用条目

我有一个供应商列表.我还有一个供应商ID列表.

    public List<SAP_Vendor> Vendors { get; set; }
    public List<string> SubcontractVendorIDs { get; set; }
Run Code Online (Sandbox Code Playgroud)

我想返回List<SAP_Vendor>其中的ID位于SubcontractVendorIDs列表中的供应商.

List<SAP_Vendor> SubcontractVendors = Vendors.Select(??).ToList();
Run Code Online (Sandbox Code Playgroud)

要么

List<SAP_Vendor> SubcontractVendors = Vendors.Where(??).ToList();
Run Code Online (Sandbox Code Playgroud)

c# list

2
推荐指数
2
解决办法
4010
查看次数

MVC:System.Web.HttpException:在控制器上找不到公共操作方法"删除"

我有一个Html辅助方法,在我的控制器上调用Delete方法.

public static MvcHtmlString DeleteEmployeeOtherLeave(this HtmlHelper html, string linkText, Leave _leave)
{
    return html.RouteLink(linkText, "Default",
        new { _employeeOtherLeaveId = _leave.LeaveId, action = "Delete" },
        new { onclick = "$.post(this.href); return false;" });
}
Run Code Online (Sandbox Code Playgroud)

在我的控制器上我有;

[AcceptVerbs(HttpVerbs.Delete)]
public ActionResult Delete(int _employeeOtherLeaveId)
{
    EmployeeOtherLeaf.Delete(_employeeOtherLeaveId);

    return RedirectToAction("Payroll");
}
Run Code Online (Sandbox Code Playgroud)

但我收到此运行时错误消息;

    System.Web.HttpException: A public action method 'Delete' was not found on controller
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc

2
推荐指数
1
解决办法
3240
查看次数

在queryString上发送堆栈跟踪信息

我从我的global.ascx文件调用actionResult就像这样...

 Response.Redirect(String.Format("~/Error/{0}/?message={1}", action, exception.Message));
Run Code Online (Sandbox Code Playgroud)

我想要做的是在动作结果方法中提供整个异常对象,这样我就可以在我的页面上获取并显示堆栈跟踪信息....是否可以传递整个异常对象?处理这个问题的最佳方法是什么?或者是否有工作来获得正确的堆栈跟踪信息?目前,它是在异常对象上正确填充的属性.

asp.net-mvc

2
推荐指数
1
解决办法
316
查看次数

在MVC中回传RadioButtonFor

我的mvc网页上有2个单选按钮.

 <% using (Html.BeginForm("Search", "Search"))
   { %>
  // some html codes
     <%= Html.RadioButtonFor(m => m.Agents, "A", new { Checked = "checked" })%> //radio button 1                     
      <%= Html.RadioButtonFor(m=> m.Agents,"AG") %>  //radio button 2                      
  // some html codes
   <% } %>
Run Code Online (Sandbox Code Playgroud)

aspx页面如下所示.

我的页面也有按钮.如果我点击该按钮,则会发生回发.

如果我更改了radiobutton选择,我需要另一个回发.如何在该事件上进行回发.但如果我更改了单选按钮的选择,则没有回发.我怎样才能实现这一目标?

c# asp.net-mvc radiobuttonfor

2
推荐指数
2
解决办法
1万
查看次数

将带有jQuery Post的JavaScript数组发布到ASP.NET MVC Action获取IEnumerable <T>

考虑一下,我有以下javascript做帖子:

$.post("/MyController/SomeAction", 
      { myParam: ['Filip', 'Ekberg'] }, function(data) { alert(data); }, "html");
Run Code Online (Sandbox Code Playgroud)

我的行动看起来像这样:

[HttpPost]
public ActionResult SomeAction(FormCollection collection, 
                               IEnumerable<string> myParam)
{
    return null;
}
Run Code Online (Sandbox Code Playgroud)

当我输入此Action时,myParam为null,如果我展开FormCollection,我会看到:

在此输入图像描述

这里奇怪的部分是名称(Key)myParam[]可能是它未映射到的原因myParam.

此外,我也尝试过dynamic[] myParam,但它也不起作用.

我知道我可以使用,JSON.stringify但我现在不想这样做.那么,任何想法在这里发生了什么以及是否有解决方案?

javascript asp.net-mvc jquery

2
推荐指数
1
解决办法
1891
查看次数

UTF8无法在Excel中运行

在我正在使用的.net代码中

byte[] bytesToSend = System.Text.Encoding.UTF8.GetBytes(partialtorender);
Run Code Online (Sandbox Code Playgroud)

然后我写它擅长

"印地语"语言中的文字在生成的excel中变得乱七八糟,你能建议做什么吗?

System.IO.MemoryStream memStr = new System.IO.MemoryStream();

memStr.Write(bytesToSend, 0, bytesToSend.Length);

 memStr.Position = 0;

FileStreamResult result1 = new FileStreamResult(memStr, "application/ms-excel");

Response.AddHeader("content-disposition", "attachment; filename=" + "newExcelSheet" + ".xls");

return result1;
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net-mvc excel

2
推荐指数
1
解决办法
4747
查看次数