我的模型public class UserRegistrationViewModel{ public string Description { get; set; }}指数@model UserRegistrationViewModel<form asp-controller="Demo" asp-action="RegisterTextArea" method="post"> <textarea asp-for="Description"></textarea> <button type="submit">Test</button></form>那里很完美,但是如果我在类库项目中声明了我的实体域,会发生什么情况?如何将那个类的地址放在我的剃刀页面上?这句话对吗?我目前犯了一个错误@model DomainEntities.ViewModel.UserRegistrationViewModel 另一个例子我目前正在犯错误@model Domain.ViewModel.UserLogInViewModel@{ ViewBag.Title = "Login";}<h2>Login</h2><form method="post" asp-controller="Account" asp-action="Login" asp-route-returnurl="@Model.ReturnUrl"> <div asp-validation-summary="ModelOnly"></div> <div> <label asp-for="Username"></label> <input asp-for="Username" /> <span asp-validation-for="Username"></span> </div> <div> <label asp-for="Password"></label> <input asp-for="Password" /> <span asp-validation-for="Password"></span> </div> <div> <label asp-for="RememberMe"></label> <input asp-for="RememberMe" /> <span asp-validation-for="RememberMe"></span> </div> <div> <input type="submit" value="Login" /> </div></form>
1 回答
SMILET
TA贡献1796条经验 获得超4个赞
所以如果你的Web
项目直接引用你的DomainEntities
项目那么是的,它会起作用你只需要指定完整namespace
的ViewModel
@model My.Full.Namespace.DomainEntities.ViewModel.UserRegistrationViewModel
或者更清洁:
@using My.Full.Namespace.DomainEntities.ViewModel @model UserRegistrationViewModel
对于第二个错误,你的namespace
to the ViewModel
is different, ie Domain
vsDomainEntities
很可能是你namespaces
写错了或者拼写不完整。
如果您使用某种方式Dependency Injection
来注入您DomainEntities
,那么如果没有一些疯狂的解决方法,您的方式将行不通。Web
需要直接依赖于您的项目ViewModels
。
最后,我质疑你把你ViewModels
放在一个单独的项目中,我会说除了最极端的情况外,你ViewModels
应该在你的Web
项目中。
- 1 回答
- 0 关注
- 91 浏览
添加回答
举报
0/150
提交
取消