- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我得到了我正在处理的这个网络项目,并且在 4/5 的 View 中我正在使用
@Html.ActionLink("Back to List", "Index", new { id=Model.ClientID})
除了我的“创建新 View ”之外,所有 View 都会让我回到我的列表这也将是唯一不加载的 View ,给我“System.NullReferenceException”的异常(exception)
我很困惑为什么这是唯一不允许我将 clientID 传递给它的 View (因为我不仅需要它,还需要 CountyID 来创建一个新的县,更重要的是告诉我它是空。
如果我删除上面的代码行,我的代码运行良好(显然除了将我的 2 个 ID 字段添加到创建 View 中)这让我认为它可能是我的 Controller 。
这是我从 givin Controller 创建的 Action
// GET: /County/Create
public ActionResult Create()
{
return View();
}
为了比较这里是同一 Controller 中的编辑操作
public ActionResult Edit(int id = 0)
{
dbCounty countys = db.Countys.Find(id);
if (countys == null)
{
return HttpNotFound();
}
return View(countys);
}
我也尝试过将此代码添加到创建新的操作链接中,当我收到此错误时
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
Most likely causes:
The directory or file specified does not exist on the Web server.
The URL contains a typographical error.
A custom filter or module, such as URLScan, restricts access to the file.
我在这里做错了什么......
我的项目建立在一个层次模型之上,一个客户多个县(如果您需要更多代码,请告诉我)
提前致谢。
提示:
一定有一个原因(我的假设)为什么在删除这行代码时它起作用(所以它一定是这行代码??) - 必须是一种不同的传递方式(clientID 的值为 1 )
@Html.ActionLink("Back to List", "Index", new { id=Model.ClientID})
需要编辑索引 Controller :
public ActionResult Index([Bind(Prefix="id")] int CID=0)
{
var clnt = db.Clients.Find(CID);
if (clnt != null)
{
return View(clnt);
}
return HttpNotFound();
}
编辑:县 Controller 的新创建操作
public ActionResult Create(int id=0)
{
dbCounty countys = db.Countys.Find(id);
if (countys == null)
{
return HttpNotFound();
}
return View(countys);
}
我也试过运行
public ActionResult Create(int id=0)
{
dbClient Client = db.Clients.Find(id);
if (Client == null)
{
return HttpNotFound();
}
return View(Client);
}
(因为我正在传递一个 clientID - 模型构建的方式应该在使用 clientID(passedVariable)在数据库中创建这个新行时添加一个县 ID
最佳答案
您似乎没有将模型传递给创建 View 。在您的 Create Controller 中,您需要如下内容,其中 Client 是具有属性 ClientID 的对象。
public ActionResult Create()
{
...
return View(Client);
}
编辑:
澄清一下,在您的创建 View 中,模型为空,因为您没有在 Controller 中传递它。看看工作的 Controller ,看看它传递给 View 的是什么。您需要为 Create 执行类似的操作。
关于c# - mvc4 actionlink传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17427012/
I want to replace X with glyphicon-trash. 我正在使用 X 作为链接文本。这适用于删除项目。如何用字形替换。 这是我的代码 @Html.ActionLink(
我可以通过 Ajax.ActionLink("Getcustomers","GetCustomers","Customer") 调用 asp.net mvc Controller ; 我可以使用 Ht
假设我有一个用户列表: 用户/Index.cshtml @model IEnumerable @foreach (var user in Model) { @Html
我试图通过 POSTing 而不是 GETting 导航到 MVC 操作。 (该操作是 DELETE,我不希望它可以通过外部链接访问。) 我在由生成的网格中使用链接 Ajax.ActionLink(
Ajax.ActionLink("Link name",....) 可以用复选框代替“链接名称”吗? 如果是这样怎么办? 谢谢, 最佳答案 是的,当然这是可能的。您可以使用标准复选框: @Html.C
我想使用jquery调用actionlink,下面是代码: $("#paycheck").click(function () { if ($("#terms").attr("che
我有两条路线: routes.MapRoute( "route1", "{controller}/{action}/{param1}/{param2}/NotT
我正在使用 bootstrap 将我的元素放在正确的位置,当我尝试将它与来自 asp.net 的 actionlink 一起使用时,它不使用所有行,它只使用文本的大小,我想要使用所有行的元素,以便我可
这个问题在这里已经有了答案: How to use CSS on an Html.ActionLink in C# (2 个答案) 关闭 4 年前。
我想使用 jQuery 创建按钮效果,即 mouse_over、mouse_leave 和 mouse_click。我有使用 visual studio 2012 在 mvc 4 中的 ActionL
我在路由表中有一些预定义的 URL 实际上指向相同的 Controller 和操作,但语言不同。例如 routes.MapRoute( "Contact
我正在尝试创建一个 ActionLink 以从网格中导出数据。网格根据查询字符串中的值进行过滤。这是 url 的示例: http://www.mysite.com/GridPage?Column=Na
如问题所述,是否可以使用包含元素的 ActionLink,如果不能,实现它的最佳方法是什么? 例如,假设我有一个 Span 元素,我希望整个元素成为一个超链接...以下工作:
这是简单的 html: --%> 我想用它们制作 html.actionlink: 我想要没有文字的链接。它不起作用,第一个参数中不允许为 null。图像是正常的短。我如何在没有文本
我使用以下代码来实现排序: @Ajax.ActionLink("Name", "Cause", "Search", new { query = Model.Query, category =
全部, 掌握 ASP.NET MVC。到目前为止,一切都很好,但这个有点疯狂。 我有一个包含超链接属性字典的 View 模型,使用如下: 菜单 = 模型变量 Html.ActionLink(Html.
没有创建我自己的 ActionLink HtmlHelper 有没有办法强制任何 ActionLinks 呈现小写? 更新: 查看以下链接以扩展 RouteCollection 以添加 Lowecas
谁能解释为什么会发生以下情况?以及如何解决,Visual Studio 2010 和 MVC2 结果是 /Product/AddOption?class=lightbox 结果是 /Product
如何向这个@Html.ActionLink 添加一个类?我尝试了很多建议,但到目前为止都没有奏效。 @Html.ActionLink("Physicia
我在 ASP.NET-MVC 应用程序的 View 中使用 Ajax.ActionLink,并且我正在使用 InsertionMode.Replace,但我看到还有一个 ReplaceWith 选项。
我是一名优秀的程序员,十分优秀!