asp.net-mvc-2 – 如何在Asp.net MVC 2中使用Base ViewModel
发布时间:2020-05-27 09:35:50 所属栏目:asp.Net 来源:互联网
导读:当我熟悉Asp.Net MVC时,我使用的是MVC 2,我注意到在Kigg项目中使用了BaseViewData类,我不确定如何实现. 我希望我的每个ViewModels都有一些可用的值.使用一个迭代表,但我想知道最好的做法是什么,Kigg如何做? Kigg public abstract class BaseViewData { publi
|
当我熟悉Asp.Net MVC时,我使用的是MVC 2,我注意到在Kigg项目中使用了BaseViewData类,我不确定如何实现. 我希望我的每个ViewModels都有一些可用的值.使用一个迭代表,但我想知道最好的做法是什么,Kigg如何做? Kigg public abstract class BaseViewData
{
public string SiteTitle { get; set; }
// ...other properties
}
public class UserListViewData : BaseViewData
{
public string Title { get; set; }
// .. other stuff
}
在我的WebForms应用程序中,我使用从System.Web.UI.Page继承的BasePage. public abstract class BaseViewModel
{
public int SiteId { get; set; }
}
public class UserViewModel : BaseViewModel
{
// Some arbitrary ViewModel
}
public abstract class BaseController : Controller
{
private IUserRepository _userRepository;
protected BaseController()
: this(
new UserRepository())
{
}
}
参考Kigg方法,我如何确保从BaseViewModel继承的每个ViewModel都具有SiteId属性? 我应该使用什么最佳做法,样本或模式? 解决方法我将采取的方法是使用基本控制器,并使用OnActionExecuted覆盖用普通数据填充您的模型.然后只需确保您的控制器从您的基本控制器继承,并且模型从基本模型继承.public class BaseController : Controller
{
public override void OnActionExecuted( ActionExecutedContext filterContext )
{
var result = filterContext.Result as ViewResult;
if (result != null)
{
var baseModel = result.Model as BaseViewModel;
if (baseModel != null)
{
baseModel.SiteID = ...
}
}
}
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 具有html5中的文本以外的输入类型的UpdatePanel
- 将ASP.NET验证与JQuery相结合的优雅方式
- 在ASP.NET Web应用程序之间传递会话数据
- ASP.NET MVC URL在CSS文件中自动解析
- 在ASP.NET 2.0中的特定时间清除缓存
- asp.net-mvc – MVC路由错误:约束条目’长度’
- asp.net – 如何获得Google Prettify更像Visual Studio
- Asp.net webForm设置允许表单提交Html的方法
- 看起来像asp.net mvc中的日期工具不正确
- asp.net-mvc-3 – 将AuthorizeAttribute应用于控制器类并同
推荐文章
站长推荐
- asp.net – 为什么在Visual Studio 2010中禁用“
- vbscript – 在赋值中使用Set时“需要对象”
- asp.net-mvc – 用于控件名称的参数化前缀的局部
- asp.net – 可以将值或参数传递到用户控件?
- asp.net-mvc – 我可以传递一个匿名类型到我的AS
- asp.net-mvc – 我什么时候应该在asp.net mvc应用
- 如何使用代码隐藏技术在asp.net中获取当前页面的
- asp.net-mvc-3 – MVC按钮点击动作
- asp.net-mvc – 使用Ninject时如何处理DBContext
- asp.net – 是MemoryCache范围会话还是应用程序?
热点阅读
