我有一个包含当前用户属性的基本viewmodel类,我需要MVC根据用户的管理状态呈现文本框或标签.
目前,我正在这样做,但代码必须重复很多.
@if (Model.CurrentUser.Admin)
{
@Html.EditorFor(m => m.Order.CustomerDiscount);
}
else
{
@Html.DisplayFor(m => m.Order.CustomerDiscount);
}
Run Code Online (Sandbox Code Playgroud)
是否可以创建自定义编辑器扩展?
@Html.PrivilegedEditorFor(m=>m.Order.CustomerDiscount);
Run Code Online (Sandbox Code Playgroud)
编辑:
感谢@Fals.这里略有不同的解决方案:
using System.Web.Mvc.Html;
public static class HtmlHelperExtensions
{
public static MvcHtmlString PrivilegedEditorFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, bool isAdmin)
{
if (isAdmin)
{
return htmlHelper.EditorFor(expression);
} else {
return htmlHelper.DisplayFor(expression);
}
}
}
Run Code Online (Sandbox Code Playgroud) 作为SAP镇的一个完全陌生人,我想将自己的应用程序(移动销售人员自动化)数据传输到SAP.我的应用程序有客户,库存,库存,发票(和运单),支票,付款,收款,库存转移数据等的记录.我有一个额外的数据库,其中包含记录的匹配.即.我的应用程序中ID为345的客户在SAP中具有密钥120-035-0223.当然,每条记录都必须知道它的对应物,包括参数.
在搜索谷歌和SAP帮助网站一天之后,我了解到它会比我预期的更加痛苦.特别是SAP网站甚至没有给出任何线索.说我找不到.
我们将数据传输到其他一些ERP系统,其中一些系统需要XML文件,另一些则公开其API.
我的观点是,Sql Server的SSIS对我来说是一个选择吗?我希望是这样,所以我可以在自己的领土上战斗.由于客户端请求会有很大差异,因此我将灵活性视为最重要的标准.另外,我想尽可能多地传输数据.
任何帮助表示赞赏.