Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Razor@model生成的代码无效_C#_Asp.net Mvc_Razor - Fatal编程技术网

C# Razor@model生成的代码无效

C# Razor@model生成的代码无效,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我在尝试在局部视图中添加@model指令时遇到了一个奇怪的问题 使用以下行时: @model Tuple<int, Tuple<int, string, string>, int> @模型元组 将生成以下类声明: public class _Page_views_forms_controls__filter_edit_cshtml : System.Web.Mvc.WebViewPage<Tuple<int { public class\u Page\u

我在尝试在局部视图中添加@model指令时遇到了一个奇怪的问题

使用以下行时:

@model Tuple<int, Tuple<int, string, string>, int>
@模型元组
将生成以下类声明:

public class _Page_views_forms_controls__filter_edit_cshtml : System.Web.Mvc.WebViewPage<Tuple<int {

public class\u Page\u views\u forms\u controls\u filter\u edit\u cshtml:System.Web.Mvc.WebViewPage要展开我的评论,可以创建一个viewmodel类,如下所示:

public class FooViewModel
{
    public Tuple<int, Tuple<int, string, string>, int> Data { get; set; }
}

这将有助于Razor引擎编译视图。

简单修复-使用viewmodel类包装
元组中包含的数据
这是严格要求的吗?出于某种原因,我是否无法将参数化类型用作模型?我的第三个元组字段实际上是一个视图模型(不是如图所示的int),前两个是循环中的某个上下文。我不想显式地命名该实体,因此使用元组。这不是强制性的,但使用viewmodel是非常好的做法。一般同意,但在这里我特别认为这是不必要的。不管怎样,你有没有想过是什么导致了上述行为?即使我选择了另一条路,我也希望理解这里的问题。我承认,这是不寻常的。我以前也没有遇到过这种情况。我在谷歌上找不到任何与你类似症状的相关信息。事实上,我也找不到任何相关信息。这似乎是特定于Tuple的,因为Dictionary工作得很好,但Tuple本身也有同样的问题。我认为可能是多个泛型重载造成了一些混乱,但不知道如何解决它。
@model FooViewModel
@{
    var data = Model.Data;
}