我有一个看起来像这样的客户解析器:
[NamespaceParser(
Namespace = "http://mysite/schema/cache",
SchemaLocationAssemblyHint = typeof(CacheNamespaceParser ),
SchemaLocation = "/cache.xsd"
)
]
public class CacheNamespaceParser : NamespaceParserSupport
{
public override void Init()
{
RegisterObjectDefinitionParser("cache", new CacheParser ());
}
}
public class CacheParser : AbstractSimpleObjectDefinitionParser
{
protected override Type GetObjectType(XmlElement element)
{
return typeof(CacheDefinition);
}
protected override void DoParse(XmlElement element, ObjectDefinitionBuilder builder)
{
}
protected override bool ShouldGenerateIdAsFallback
{
get { return true; }
}
}
在网络配置中,我有以下配置....
<spring>
<parsers>
<parser type="Spring.Data.Config.DatabaseNamespaceParser, Spring.Data"/>
<parser type="App.Web.CacheNamespaceParser, WebApp" />
</parsers>
当我运行该项目时,我收到以下错误:
为 spring/parsers 创建配置节处理程序时出错:资源名称无效。名字必须在'assembly:<assemblyName>/<namespace>/<resourceName>' format.
我在 CacheNamespaceParser init 方法中放置了一个断点并调用它。
如果我从网络配置中删除一切都很好!
任何想法有什么问题