请大神帮忙解决这个问题,这个HNibernate刚学,谢谢先。
出现这个错误:ConsoleApplication2.Mapping.User.hbm.xml(2,2): XML validation error: 未声明“urn:nhibernate-mapping-2.2:nhibernate”元素。
//这里是控制台
- {
- static void Main(string[] args)
- {
- Test();
- }
- static void Test()
- {
- NHibernateHelper db = new NHibernateHelper();
- ISession session= db.GetSession();
- using (var trans = session.BeginTransaction())
- {
- User user = new User();
- user.Age = 123;
- user.Name = "janekim";
- session.Save(user);
- trans.Commit();
- }
- }
//NHibernateHelper帮助类
- {
- public class NHibernateHelper
- {
- private ISessionFactory sessfFactory;
- public NHibernateHelper()
- {
- sessfFactory = GetSessionFactory();
- }
- private ISessionFactory GetSessionFactory()
- {
- Configuration config = new Configuration().AddAssembly(Assembly.GetExecutingAssembly());
- return config.BuildSessionFactory();
- }
- public ISession GetSession()
- {
- return sessfFactory.OpenSession();
- }
- }
- }
//这里是User.hbm.xml
- <nhibernate xmlns="urn:nhibernate-mapping-2.2">
- <class name="ConsoleApplication2.Domain.User,ConsoleApplication2" table="User"></class>
- <id name="Id" length="4">
- <generator class="vative"></generator>
- </id>
- <property name="Name">
- <column name="Name" sqltype="nvarchar" length="50" not-null="true"></column>
- </property>
- <property name="Age">
- <column name="Age" sqltype="int" length="4" not-null="true"></column>
- </property>
- </nhibernate>
//App.config配置文件
<?xml version="1.0" encoding="utf-8" ?>
<nhibernate xmlns="urn:nhibernate-mapping-2.2">
<class name="ConsoleApplication2.Domain.User,ConsoleApplication2" table="User"></class>
<id name="Id" length="4">
<generator class="vative"></generator>
</id>
<property name="Name">
<column name="Name" sqltype="nvarchar" length="50" not-null="true"></column>
</property>
<property name="Age">
<column name="Age" sqltype="int" length="4" not-null="true"></column>
</property>
</nhibernate>