首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NerdDinner MVC和Html.Encode

NerdDinner MVC和Html.Encode
EN

Stack Overflow用户
提问于 2012-04-05 19:02:19
回答 2查看 330关注 0票数 0

DinnerController中,我得到了一个数据。

代码语言:javascript
复制
 public ActionResult Details(int id)
 {

            Dinner dinner = dinnerRepository.GetDinner(id);

            if (dinner == null)
                return View("NotFound");
            else
                return View("Details", dinner);
  } 

details.aspx中,我像这样绑定它。

代码语言:javascript
复制
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <h2>
        Details</h2>
    <fieldset>
        <legend>Fields</legend>
        <p>
            DinnerID:
            <%= Html.Encode(Model.DinnerID) %>
        </p>
        </fieldset>
</asp:Content>

但我弄错了。

Compiler Error Message: CS1061: 'object' does not contain a definition for 'DinnerID' and no extension method 'DinnerID' accepting a first argument of type 'object' could be found (are you missing a using directive or an assembly reference?)

我刚开始学习mvc,无法理解problem.May我错过了something.Plz帮助?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-08 13:36:25

我在创建视图放映时忘记选中Create a strongly-typed view复选框,我得到了这个错误。我通过在details.aspx页面中添加<HelloMvc.Models.Dinner>来解决这个问题。意味着当我得到像这样的错误代码时。

代码语言:javascript
复制
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>

在解决问题之后,代码变成了:

代码语言:javascript
复制
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<HelloMvc.Models.Dinner>" %>

谢谢你的回复。我张贴这个ans作为未来的参考。

票数 0
EN

Stack Overflow用户

发布于 2012-04-05 21:27:34

你做错了几件事:

1)它被称为MVC,意思是模型-视图-控制器(你的晚餐实体通过你的控制器传递给你的视图)

您要创建的是一个新视图。它将在项目的View部分中创建。

我想这段代码可能会告诉你你需要什么:

代码语言:javascript
复制
@model HelloMvc.Models.Dinner  //passing the value of dinner is done here . from now on you will refer to the dinner object with Model
<table>
       <tr>
         <td>
           Description
         </td>
         <td>
            @Html.Display(Model.Description) //google other @Html diplay modes ( Label Textbox, etc)
         </td>
       </tr>
</table>

MVC一开始可能会很难,特别是如果你培养了一种Asp.Net思维;耐心一点,首先理解基本概念,你会喜欢它的。

这里有一个链接,可以帮助你理解整个过程。

http://geekswithblogs.net/dotNETvinz/archive/2011/06/03/asp.net-mvc-3-creating-a-simple-sign-up-form.aspx

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10027352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档