T4MVC renderpartial和Spark视图

时间:2010-01-18 10:20:41

标签: asp.net-mvc spark-view-engine t4mvc

 #Html.RenderPartial(MVC.Shared.Views._Sorter);

抛出错误=>

  

没有为扩展程序'.spark'注册的构建提供程序。您可以在machine.config或web.config中的部分中注册一个。确保具有BuildProviderAppliesToAttribute属性,该属性包含值“Web”或“全部”。

     

描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

     

异常详细信息:System.Web.HttpException:没有为扩展名“.spark”注册的构建提供程序。您可以在machine.config或web.config中的部分中注册一个。确保具有BuildProviderAppliesToAttribute属性,该属性包含值“Web”或“全部”。

任何想法可能出错?


将此添加到web.config => system.web =>编译

  <buildProviders>
    <add extension=".spark" type="System.Web.Compilation.PageBuildProvider" />
  </buildProviders>

强制app将web视图构建为webforms视图并生成${Something.something}。那么 - 什么是spark viewengine的等价物?

1 个答案:

答案 0 :(得分:2)

您能否尝试对T4MVT.tt进行以下更改。在ViewsFolderInfo.AddView方法中,更改行:

Views[viewFieldName] = GetVirtualPath(item);

Views[viewFieldName] = viewFieldName;

如果效果很好,我们可以添加一个开关到设置文件,使其执行此操作而不是默认的完整路径。

让我知道这是怎么回事!


请注意,MVC.Shared.Views._Sorter只是一个带有视图路径的常量。如果你在没有T4MVC的情况下编写这段代码,你会在那里传递什么样的字符串?

也许Spark在这里接受的视图路径类型有不同的要求?如果需要,我们可以调整T4MVC以使其工作,但我想首先完全理解T4MVC之外的Spark行为。