asp.Net VNext 中的命令行脚手架
Command line scaffolding in asp.Net VNext
我正在尝试在 Visual studio 2015 预览版中创建 Web 应用程序。我正在尝试使用命令行脚手架创建视图。
我使用了以下命令:
k gen controller -name ProductController -m ViewModels.Product -dc ProductContext -f -udl
ViewModels.Product
class 在另一个项目中定义并在 UI 项目中引用。 运行 命令时出现以下错误:
Finding the generator 'controller'...
Running the generator 'controller'...
Attempting to figure out the EntityFramework metadata for the model and DbContext.
The entity type 'ViewModels.Product' requires a key to be defined.
在 Product
class 中,我添加了对 System.ComponentModel.DataAnnotations
的引用并使用 [key]
属性定义了 属性。
它正在创建 DataContext class,而不是视图。
任何人都请指出我错在哪里。
这是目前脚手架的一个已知问题,作为解决方法,您可以在生成的 DbContext 的 OnModelCreating 方法中配置密钥,如下所示:
builder.Entity<Product>().Key(p => p.MyKeyName);
然后再搭建脚手架
我正在尝试在 Visual studio 2015 预览版中创建 Web 应用程序。我正在尝试使用命令行脚手架创建视图。 我使用了以下命令:
k gen controller -name ProductController -m ViewModels.Product -dc ProductContext -f -udl
ViewModels.Product
class 在另一个项目中定义并在 UI 项目中引用。 运行 命令时出现以下错误:
Finding the generator 'controller'...
Running the generator 'controller'...
Attempting to figure out the EntityFramework metadata for the model and DbContext.
The entity type 'ViewModels.Product' requires a key to be defined.
在 Product
class 中,我添加了对 System.ComponentModel.DataAnnotations
的引用并使用 [key]
属性定义了 属性。
它正在创建 DataContext class,而不是视图。
任何人都请指出我错在哪里。
这是目前脚手架的一个已知问题,作为解决方法,您可以在生成的 DbContext 的 OnModelCreating 方法中配置密钥,如下所示:
builder.Entity<Product>().Key(p => p.MyKeyName);
然后再搭建脚手架