我使用Spark直接从控制台应用程序输出一些HTML。我的项目中有以下视图类。
//A shared view that all other views should use
public abstract class SharedView : AbstractSparkView
{
public string BasePath = string.Empty;
}
public abstract class ApplicationView : SharedView
{
public Application Application { get; set; }
}
然后我对Spark
进行了以下设置var settings = new SparkSettings()
.SetPageBaseType(typeof(ApplicationView )) //What should go in here!?
.AddNamespace("SomeNameSpaces")
;
当我不将ApplicationView作为SetPageBaseType时,我现在不断收到CompilerException - 我不应该在那里拥有我的共享基本视图?
我尝试使用相同的引擎实例将几个不同的视图写入磁盘(使用不同的视图模型)然后我必须为每个具有不同的SetPageBaseType的设置引擎实例(对于我正在渲染的当前视图) - 应该这样吗?
基本上我需要上面的帮助和SetPageBaseType的一般解释以及如何使用它。
答案 0 :(得分:1)
您可以通过直接在引擎的Setting属性下更改设置来更改每个视图的PageBaseType。
engine.Settings.PageBaseType = typeof(ApplicationView).FullName;
我为这个过程写了一个简单的包装器...如果你有兴趣,可以找到它here。