【发布时间】:2009-08-08 23:30:30
【问题描述】:
我觉得发布这个很愚蠢,但我看不出这里有什么问题。我想看看热门的 Nhibernate 作品,而不是进入网站,下载它,并按照快速入门教程进行操作,但做了一些机会——我使用的是 MySql,它不是产品,而是我项目中的用户,但无论如何。 ..
当我运行模式生成测试时出现错误,这是错误信息:
TestCase 'Uniflu.Domain.Tests.GenerateSchema_Fixture.Can_generate_schema' 失败:NHibernate.MappingException:无法编译映射文档: Uniflu.Domain.Mappings.Usuario.hbm.xml ----> NHibernate.HibernateException : 无法实例化方言类 NHibernate.Dialect.MySqlDialect ----> System.TypeLoadException:无法加载类型 NHibernate.Dialect.MySqlDialect。 可能的原因:未指定程序集名称。 em NHibernate.Cfg.Configuration.LogAndThrow(异常异常) em NHibernate.Cfg.Configuration.AddValidatedDocument(NamedXmlDocument doc) em NHibernate.Cfg.Configuration.ProcessMappingsQueue() em NHibernate.Cfg.Configuration.AddInputStream(流 xmlInputStream,字符串名称) em NHibernate.Cfg.Configuration.AddResource(字符串路径,程序集程序集) em NHibernate.Cfg.Configuration.AddAssembly(程序集程序集) E:\Projetos\Uniflu\Uniflu\Uniflu.Domain\Tests\GenerateSchema_Fixture.cs(17,0): em Uniflu.Domain.Tests.GenerateSchema_Fixture.Can_generate_schema() --休眠异常 em NHibernate.Dialect.Dialect.InstantiateDialect(String dialectName) em NHibernate.Dialect.Dialect.GetDialect(IDictionary`2 props) em NHibernate.Cfg.Configuration.AddValidatedDocument(NamedXmlDocument doc) --TypeLoadException em NHibernate.Util.ReflectHelper.TypeFromAssembly(AssemblyQualifiedTypeName 名称,布尔 throwOnError) em NHibernate.Util.ReflectHelper.ClassForName(字符串名称) em NHibernate.Dialect.Dialect.InstantiateDialect(String dialectName) 0 次通过,1 次失败,0 次跳过,耗时 5.37 秒(NUnit 2.5)。
我的hibernate.cfg.xml:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory name="Test">
<property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="dialect">NHibernate.Dialect.MySqlDialect</property>
<property name="connection.connection_string">Server=Athenas;Database=uniflu;Uid=alaor;Pwd=test;</property>
<property name="show_sql">true</property>
</session-factory>
</hibernate-configuration>
我的用户类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Uniflu.Domain
{
public class Usuario
{
public virtual Guid Id { get; set; }
public virtual String Nome { get; set; }
public virtual String Email { get; set; }
public virtual String Senha { get; set; }
public virtual String Dica { get; set; }
public virtual DateTime DataCriado { get; set; }
public virtual DateTime UltimoAcesso { get; set; }
public virtual Boolean Ativo { get; set; }
}
}
我的 Usuario.hbm.xml:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="Uniflu.Domain"
namespace="Uniflu.Domain">
<class name="Usuario">
<id name="Id">
<generator class="guid" />
</id>
<property name="Nome" />
<property name="Email" />
<property name="Senha" />
<property name="Dica" />
<property name="DataCriado" />
<property name="UltimoAcesso" />
<property name="Ativo" />
</class>
</hibernate-mapping>
我的解决方案名称是Uniflu,我的项目是Uniflu.Domain,是一个类库项目,目录结构是这样的:
Uniflu
-> Uniflu.Domain
-> -> 属性
-> -> 参考文献
-> -> 映射
-> -> -> Usuario.hbm.xml
-> -> 测试
-> -> -> 生成Schema_Fixture
-> -> hibernate.hbm.xml
-> -> Usuario.cs
Guyz 我看不出我做错了什么......我真的需要一些光!请!!
提前致谢。
【问题讨论】:
标签: nhibernate