asp.net – 使用xml类型在SQL Server 2005中存储XSLT?
|
我的ASP.NET Web应用程序中有很多XSL文件.很多.我使用这种通用转换方法生成一堆 AJAX HTML响应: public void Transform(XmlDocument xml,string xslPath)
{
...
XslTransform myXslTrans = new XslTransform();
myXslTrans.Load(xslPath);
myXslTrans.Transform(xml,null,HttpContext.Current.Response.Output);
}
我想使用xml类型的列将XSL定义移动到SQL Server中. 像这样的东西: public void Transform(XmlDocument xml,string xslKey)
{
...
SqlCommand cmd = new SqlCommand("GetXslDefinition");
cmd.AddParameter("@xslKey",SqlDbType.VarChar).Value = xslKey;
// where the result set has a single column of XSL: "<xslt:stylesheet>..."
...
SqlDataReader dr = cmd.ExecuteReader();
if(dr.Read()) {
SqlXml xsl = dr.GetSqlXml(0);
XslTransform myXslTrans = new XslTransform();
myXslTrans.Load(xsl.CreateReader());
myXslTrans.Transform(xml,HttpContext.Current.Response.Output);
}
}
这似乎是一种直截了当的方式: >为每个XSL添加元数据,如lastUsed,useCount等. 有没有人试过这个?有什么警告吗? 编辑 响应者列出的注意事项: >磁盘访问不能保证减少 解决方法我能看到的两大问题是:>我们使用了很多包含来确保我们只执行一次,将XSLT存储在数据库中会阻止我们这样做. 在磁盘访问方面,嗯…数据库仍然必须访问磁盘来提取数据,如果你正在谈论缓存,那么数据库不是启用缓存的必要条件. 必须同意更新/搜索选项 – 您可以使用Powershell进行操作但需要在服务器上运行,这并不总是一个好主意. 从技术上讲,我没有理由不这样做(除了希望做的包括如上所述),但实际上它似乎与任何方式的良好论据相当平衡. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何在使用ASP.NET友好URL时忽略某些路由?
- asp.net-mvc – 如何使用Visual Studio 2013和En
- asp.net – 如何在没有查找AspNetUserRoles表的情
- asp.net – IIS 404自定义错误不能按预期工作
- 每个“HttpRequest”在ASP.NET中都有自己的线程吗
- asp.net-mvc – UIHint属性在MVC中
- asp.net-mvc – 用于货币格式的ASP.NET MVC数据注
- 如何使用ASP.NET在纯HTML页面上执行表单验证?
- asp.net-mvc – 为FileResult设置ETag – MVC 3
- iis-7 – 使用asp.net在开发机器上创建无cookie应
