我是NHibernate初学者。能帮我看看代码有什么错误吗?
我所实现的操作非常简单,就是一个Role类(在TryNHibernate命名空间下),对应一个ROLE_TB表(Oracle 9i)。现在就连Configuration config = new Configuration().AddAssembly("TryNHibernate");这步都通不过。
提示的错误如下:
未处理的“NHibernate.MappingException”类型的异常出现在 nhibernate.dll 中。
其他信息: The dialect was not set. Set the property hibernate.dialect.
小弟在做毕设,真是万事开头难啊!恳请大家帮帮忙,我想只要第一步迈出了,后面就会好些。:)
配置文件 TryNHibernate.config如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>
<nhibernate>
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />
<add key="hibernate.dialect" value="NHibernate.Dialect.OracleDialect" />
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.OracleClientDriver" />
<add key="hibernate.connection.connection_string" value="server=192.168.100.253; database=zhan; User id=silent; Password=shenzhoufeichuan;" />
</nhibernate> </configuration> 映射文件如下:
<?xml version="1.0" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" namespace="TryNHibernate" assembly="TryNHibernate">
<class name="Role" table="ROLE_TB">
<id name="Id" column="ROLE_ID">
<generator class="sequence"/>
</id>
<property name="Name" column="ROLE_NAME"/>
<property name="Description" column="ROLE_DESC"/>
</class>
</hibernate-mapping> 类文件如下:
using System;
namespace TryNHibernate
{
public class Role
{
public Role()
{
//
// TODO: 在此处添加构造函数逻辑
//
} private string id;
private string name;
private string description; public string Id
{
get
{
return id;
}
set
{
id = value;
}
} public string Name
{
get
{
return name;
}
set
{
name = value;
}
} public string Description
{
get
{
return description;
}
set
{
description = value;
}
}
}
} 测试文件如下:
using System;
using NHibernate.Cfg;
using NHibernate; namespace TryNHibernate
{
class Test
{
[STAThread]
static void Main(string[] args)
{
Configuration config = new Configuration().AddAssembly("TryNHibernate");
}
}
}
我所实现的操作非常简单,就是一个Role类(在TryNHibernate命名空间下),对应一个ROLE_TB表(Oracle 9i)。现在就连Configuration config = new Configuration().AddAssembly("TryNHibernate");这步都通不过。
提示的错误如下:
未处理的“NHibernate.MappingException”类型的异常出现在 nhibernate.dll 中。
其他信息: The dialect was not set. Set the property hibernate.dialect.
小弟在做毕设,真是万事开头难啊!恳请大家帮帮忙,我想只要第一步迈出了,后面就会好些。:)
配置文件 TryNHibernate.config如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>
<nhibernate>
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />
<add key="hibernate.dialect" value="NHibernate.Dialect.OracleDialect" />
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.OracleClientDriver" />
<add key="hibernate.connection.connection_string" value="server=192.168.100.253; database=zhan; User id=silent; Password=shenzhoufeichuan;" />
</nhibernate> </configuration> 映射文件如下:
<?xml version="1.0" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0" namespace="TryNHibernate" assembly="TryNHibernate">
<class name="Role" table="ROLE_TB">
<id name="Id" column="ROLE_ID">
<generator class="sequence"/>
</id>
<property name="Name" column="ROLE_NAME"/>
<property name="Description" column="ROLE_DESC"/>
</class>
</hibernate-mapping> 类文件如下:
using System;
namespace TryNHibernate
{
public class Role
{
public Role()
{
//
// TODO: 在此处添加构造函数逻辑
//
} private string id;
private string name;
private string description; public string Id
{
get
{
return id;
}
set
{
id = value;
}
} public string Name
{
get
{
return name;
}
set
{
name = value;
}
} public string Description
{
get
{
return description;
}
set
{
description = value;
}
}
}
} 测试文件如下:
using System;
using NHibernate.Cfg;
using NHibernate; namespace TryNHibernate
{
class Test
{
[STAThread]
static void Main(string[] args)
{
Configuration config = new Configuration().AddAssembly("TryNHibernate");
}
}
}
解决方案 »
- 如何通过openremotebasekey获取远程计算机的注册表内容
- C#链接数据库失败,求助
- 弱弱地问:怎样在事件中触发另一个事件?(正在线上等)
- 关于SQL SERVER 2000的连结,请各位老大帮忙!
- 高手解释一下,datalist控件的ItemDataBound事件的用法及作用
- 写了个windows service程序,通过运行命令行实用工具 InstallUtil.exe 安装,为什么还是不行呢?
- 检验TextBox里输入的数值的正则表达式
- 我从数据库中按需读出一部份数据想生成Excel文件.各位大侠快请进!!!
- C#如何直接调用COM
- listview中显示的排序问题
- 有asp.net和C#制作过网页的高手么?急
- 世界上最难的SQL语句,搜虎的面试题,谁会啊。。。。!!!!!!!!!!!!!!!!!!!!!!!!
NHibernate.Dialect.Oracle9Dialect我这里没有Oracle,所以不好帮你试,你自己试试,不行再想办法!
NHibernate.Dialect.Oracle9Dialect
还是不行...
<class name="TryNHibernate.Role,TryNHibernate" table="ROLE_TB">3.映射文件属性应改为:嵌入的资源希望我遇到的问题对你有帮助!
非常感谢你能替我调试程序,可是你说的注意事项我都注意了,可还是调不通过.
总是显示:
未处理的“NHibernate.MappingException”类型的异常出现在 nhibernate.dll 中。
其他信息: The dialect was not set. Set the property hibernate.dialect.
真实无奈了......