1

我有一个引用程序集的 ASP.NET MVC 3 (Razor) 应用程序,其中程序集只不过是我在业务逻辑中使用的一堆实体。

我通过引用存在于我的参考 BL 程序集中的实体/模型来创建强类型视图。不幸的是,通过以这种方式引用模型,脚手架功能不起作用 - 具体来说,MVC 将View成功创建,但不会包含任何存在于引用模型上的公开属性的脚手架。

我能够让脚手架工作的唯一方法是在Models从实体继承的目录中显式创建一个类,并显式定义类似于以下的属性:

模型示例

namespace MyMvcApplication.Models
{
    public class MyMvcModel: MyReferencedEntity
    {
        new public string Name { get { return base.Name; } }
        new public string Password { get { return base.Password; } }
        new public string Foo { get { return base.Foo; } }
        new public string Bar { get { return base.Bar; } }
    }
}

现在,如果我在创建强类型视图时引用上述模型,则脚手架功能效果很好,一切都很好。

我的问题是;有没有一种方法可以让脚手架在View引用不在Models目录中的类的情况下工作,这样我就不必像在上面的示例中那样重新创建类?

4

1 回答 1

0

好吧,我只是遇到了完全相同的情况。我遵循了这些步骤。晚了很多,但可能对其他人有帮助:

  • 卸载您的模型项目
  • 重新加载它
  • 构建模型项目
  • 将项目引用添加到 Web 应用项目中的模型项目
  • 尝试创建脚手架控制器。

希望这可以帮助!

于 2019-01-26T20:15:12.657 回答