首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MappingException未被处理: NHibernate

MappingException未被处理: NHibernate
EN

Stack Overflow用户
提问于 2011-03-23 17:06:08
回答 1查看 2.7K关注 0票数 1

我正在尝试从“NHibernate”( NHibernate在行动中 )一书中了解有关NHibernate在行动中的信息,并试图编译和运行第一个示例,这给了我以下例外:

无法编译映射文档: Namespace.FolderName.ClassName.hbm.xml

内在的例外是

代码语言:javascript
复制
{"<hibernate-mapping xmlns='urn:hibernate-mapping-2.2'> was not expected."}

这是我的映射文件:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:hibernate-mapping-2.2"
                   auto-import="true">
  <class name="Namespace.Folder.ClassName,Namespace.Folder" lazy="false">
    <id name="id" access="field">
      <generator class="native" />
    </id>
    <property name="name" access="field" column="name"/>
    <many-to-one access="field" name="manager" column="manager"
                 cascade="all"/>
    </class>
</hibernate-mapping>

当我试图创建如下会话时,就会发生这种情况:

代码语言:javascript
复制
static ISession OpenSession()
        {
            if (factory == null)
            {
                Configuration c = new Configuration();
                c.AddAssembly(Assembly.GetCallingAssembly());
                factory = c.BuildSessionFactory();
            }
            return factory.OpenSession();
        }

异常由以下行引发:

代码语言:javascript
复制
c.AddAssembly(Assembly.GetCallingAssembly());

下面是整个异常堆栈跟踪:

**

未处理的DataGenerator.HibernateMapper.Individual.hbm.xml Message=Could未编译映射文档: NHibernate.Cfg.Configuration.LoadMappingDocument(XmlReader hbmReader的d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\Configuration.cs:line 340中的NHibernate.MappingException Source=NHibernate StackTrace: at NHibernate.Cfg.Configuration.LoadMappingDocument(XmlReader异常),(字符串名称)在d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\Configuration.cs:line 1783 at NHibernate.Cfg.Configuration.AddXmlReader(XmlReader hbmReader,String name)在d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\Configuration.cs:line 1813 at NHibernate.Cfg.Configuration.AddInputStream(Stream xmlInputStream,String name)在d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\Configuration.cs:line 630的NHibernate.Cfg.Configuration.AddResource(String路径中,汇编( d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\Configuration.cs:line 668 at NHibernate.Cfg.Configuration.AddAssembly(Assembly assembly)在d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\Configuration.cs:line 761 at DataGenerator.Program.OpenSession() in C:\Documents和Settings\user1\Desktop\DataGeneration\DataGenerator\DataGenerator\Program.cs:line 46 at DataGenerator.Program.CreateIndividualAndSaveToDatabase()在C:\Documents和Settings\user1\Desktop\DataGeneration\DataGenerator\DataGenerator\Program.cs:line 29 at DataGenerator.Program.Main()中,C:\Documents和Settings\user1\Desktop\DataGeneration\DataGenerator\DataGenerator\Program.cs:line 16在System.AppDomain._nExecuteAssembly(RuntimeAssembly程序集中,( Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ThreadHelper.ThreadStart_Context(Object state)在System.AppDomain.ExecuteAssembly(String assemblyFile,ignoreSyncCtx,String[] args)在System.Threading.ExecutionContext.Run(ExecutionContext executionContext,ContextCallback回调,Object状态,布尔ignoreSyncCtx)在System.Threading.ExecutionContext.Run(ExecutionContext executionContext,ContextCallback回调,System.Threading.ThreadHelper.ThreadStart() InnerException: System.InvalidOperationException Message=There是XML文档(1,2)中的一个错误。在System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader,String encodingStyle,XmlDeserializationEvents events,at System.Xml.Serialization.XmlSerializer.Deserialize(TextReader textReader) at NHibernate.Cfg.NamedXmlDocument..ctor(String name,XmlDocument document),在d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\NamedXmlDocument.cs:line 27 at NHibernate.Cfg.Configuration.LoadMappingDocument(XmlReader hbmReader,(字符串名称)在d:\CSharp\NH\nhibernate\src\NHibernate\Cfg\Configuration.cs:line 1774 InnerException: System.InvalidOperationException Message=中是没有预料到的。Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderHbmMapping.Read109_hibernatemapping() Source=2p514b3b StackTrace: at InnerException:

**

有人能给我一些关于这里发生了什么的建议吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-23 17:12:50

确保映射文件的构建操作设置为“嵌入式资源”。

编辑:

试一试

代码语言:javascript
复制
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" auto-import="true">

注意nhibernate中的n

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5408974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档