使用项目相对方式(而不是绝对路径)引用XSLT文件

时间:2010-03-16 18:52:24

标签: c# .net xslt

xsltFileName 的文件位于我的项目 WebSite2 中(位于项目的根级别)。我目前使用绝对路径来获取XSLT文件名:

XslCompiledTransform xslt = new XslCompiledTransform();
String xsltFileName = "file:///C:\\Documents and Settings\\kentl\\My Documents\\Visual Studio 2005\\WebSites\\WebSite2\\page.xsl";
xslt.Load(xsltFileName);

我想要一个没有绝对路径的解决方案。什么是最干净的方式?

1 个答案:

答案 0 :(得分:3)

XslCompiledTransform xslt = new XslCompiledTransform();
String xsltFileName = Server.MapPath("~/page.xsl");
xslt.Load(xsltFileName);

或者,如果您不在Web表单(即业务对象)中:

XslCompiledTransform xslt = new XslCompiledTransform();
String xsltFileName = System.Web.HttpContext.Current.Server.MapPath("~/page.xsl");
xslt.Load(xsltFileName);