ASP.net返回包含数据变量的视图

时间:2015-06-26 08:05:06

标签: c# sql asp.net-mvc

public ActionResult Index()
{
   return View("test", new {a = 1, b = 2});
}

和我的观点:

<%= a; %>

我收到错误:

  

&#39;一个&#39;没有宣布。由于其保护级别,它可能无法访问。

1 个答案:

答案 0 :(得分:1)

你离解决方案很近!只需添加模型即可访问其属性

  //in your view      
  <%= Model.a %>

但我想建议避免控制器中的匿名类型return View(new{a=foo,b=bar})不是一个好主意。 请按照以下步骤操作

  • 创建模型

    namespace ModelCentral{
    public class AbModel
    {
      public int a{get;set;};
      public int b{get;set;};
    }
    }
    
  • 然后按此

    编辑您的控制器操作
    public ActionResult Index()
    {
     var model = new AbModel() {a = 1, b = 2};
       return View("test",model);
    }
    
  • 终于在你看来

     <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<ModelCentral.AbModel>" %>
    
     <%= Model.a%>