gpt4 book ai didi

asp.net-mvc - 添加 View 模型类下拉列表不显示我的类

转载 作者:行者123 更新时间:2023-12-02 22:43:30 24 4
gpt4 key购买 nike

我创建了一个新的 C# asp.net mvc 4.0 (beta) Internet 应用程序,但在 Visual Studio 2010 (sp1) 的“添加 View ”对话框中出现了一些奇怪的行为。当我决定创建强类型 View 时,在“添加 View ”对话框中,“模型类”下拉列表不显示我的 ViewModel 类。

郑重声明,是的,我在触发“添加 View ”对话框之前确实编译了应用程序。

我相信我已经查明了问题,但不知道如何解决。如果有人愿意重现该行为,以下是重现步骤:

  1. 在 Visual Studio 2010 (sp1) 中,创建一个新的 C# asp.net MVC 4.0(测试版)互联网应用程序。
  2. 在 Models 文件夹中,创建一个名为的新简单类“GazouViewModel.cs”
  3. 构建应用程序,打开 HomeController,右键单击Index() ActionResult 并选择添加 View ...
  4. 在“添加 View ”对话框中,选中“强类型 View ”复选框并在模型类:下拉列表中,您会注意到“GazouViewModel”
<小时/>
  1. 在解决方案资源管理器中,右键单击您的项目并选择“管理NuGet 包”
  2. 搜索、查找并安装“Bootstrapper.Autofac”软件包。
  3. 重建应用程序并验证您的“GazouViewModel”是否仍然存在显示在“添加 View ”下拉对话框中。
  4. “GazouViewModel”应仍显示在下拉列表中。
<小时/>
  1. 在解决方案资源管理器中,右键单击您的项目并选择“管理NuGet 包”
  2. 搜索、查找并安装“Autofac ASP.NET MVC4(测试版)”集成”包。
  3. 重建应用程序并验证您的“GazouViewModel”是否仍然存在显示在“添加 View ”下拉对话框中。
  4. “GazouViewModel”应仍显示在下拉列表中。
<小时/>
  1. 在解决方案资源管理器中,右键单击您的项目并添加一个新类(Class1.cs)任何地方都没关系。
  2. 使 Class1 实现 IAutofacRegistration 并实现接口(interface)。
  3. 重建应用程序并验证您的“GazouViewModel”是否仍然存在显示在“添加 View ”下拉对话框中。
  4. “GazouViewModel”不再显示在模型类中下拉菜单。

看来,一旦我创建一个实现 IAutofacRegistration 接口(interface)的类并构建应用程序,我就无法再在该下拉列表中查看我的 ViewModel。

任何人都可以确认他们是否得到与我相同的结果吗?更重要的是,如何解决这个问题?

重要:我已在 mvc 3.0 应用程序中尝试了完全相同的步骤,并且发生了完全相同的行为……因此这与 BETA 版本无关。

真诚的文斯

最佳答案

如果您收到错误消息:“正在运行转换:输入文件似乎正在使用此模板不支持的架构版本。这可能会导致编译错误。请使用‘添加新生成的项目’添加更新的模板” .

您使用的是 EF 5.x。您必须将 EF 5.x 的元数据添加到 T4 模板中。在文件头中调用 DefineMetadata()

<#@ template language="C#" debug="false" hostspecific="true"#>
<#@ import namespace="System.Text.RegularExpressions" #>
<#@ include file="EF.Utility.CS.ttinclude"#><#@ output extension=".cs"#><#

DefineMetadata();

在模板创建方法的底部

private void DefineMetadata()
{
TemplateMetadata[MetadataConstants.TT_TEMPLATE_NAME] = "CSharpDbContext.Types";
TemplateMetadata[MetadataConstants.TT_TEMPLATE_VERSION] = "5.0";
TemplateMetadata[MetadataConstants.TT_MINIMUM_ENTITY_FRAMEWORK_VERSION] = "5.0";
}

关于asp.net-mvc - 添加 View 模型类下拉列表不显示我的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9668140/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com