Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 是否可以使用专用的可渲染用户控件来分离数据和表示?_Asp.net_Sharepoint_User Controls - Fatal编程技术网

Asp.net 是否可以使用专用的可渲染用户控件来分离数据和表示?

Asp.net 是否可以使用专用的可渲染用户控件来分离数据和表示?,asp.net,sharepoint,user-controls,Asp.net,Sharepoint,User Controls,对于SharePoint,我希望有工作流任务的自定义电子邮件正文。但是,我不想使用我的自定义ASCX用户控件格式化电子邮件。(我可以查看它们或使用Visual Studio WYSIWYG进行修改)。理想情况下,我可以将UserControl呈现为字符串,并且它可以正常工作 ,但它需要HttpContext.Current!=null以使用此技术。但是,由于这是一个工作流,并且工作流在延迟事件之间被序列化,因此我没有活动的HttpContext对象(HttpContext.Current=nul

对于SharePoint,我希望有工作流任务的自定义电子邮件正文。但是,我不想使用我的自定义ASCX用户控件格式化电子邮件。(我可以查看它们或使用Visual Studio WYSIWYG进行修改)。理想情况下,我可以将UserControl呈现为字符串,并且它可以正常工作

,但它需要HttpContext.Current!=null以使用此技术。但是,由于这是一个工作流,并且工作流在延迟事件之间被序列化,因此我没有活动的HttpContext对象(HttpContext.Current=null)。我也不能在工作流激活事件(工作流序列化前的一刻)上预渲染,因为我需要的所有数据都可以在之后设置


解决办法是什么?该模板实际上非常简单-只是一个包含一些数据的html表,但WYSIWYG帮助了我很多…

我决定创建一个带有占位符的简单.htm页面,如{firstname}、{{lasname}等,将.htm放在文件系统上,然后在需要时读取该文件并将这些字段替换为我想要的值

如果有人也这样做,记得用System.Web.HttpUtility.HtmlEncode(myvalue)传递值,这样就不会发生意外