考慮本實施例中作爲鹼的例子,我創建的應用程序,但是當我執行此應用程序我得到下面的錯誤。的ProxyFactoryFactory沒有配置
的ProxyFactoryFactory沒有配置。使用可用的NHibernate.ByteCode提供程序之一初始化會話工廠配置部分的'proxyfactory.factory_class'屬性。例如:NHibernate.ByteCode.LinFu.ProxyFactoryFactory,NHibernate.ByteCode.LinFu例如:NHibernate.ByteCode.Castle.ProxyFactoryFactory,NHibernate.ByteCode.Castle
以下是我使用的代碼段。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using NHibernate;
using NHibernate.Cfg;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Configuration cfg = new Configuration();
cfg.AddAssembly("NHibernate");
ISessionFactory factory = cfg.BuildSessionFactory();
ISession session = factory.OpenSession();
ITransaction transaction = session.BeginTransaction();
User newUser = new User();
newUser.Id = "joe_cool";
newUser.UserName = "Joseph Cool";
newUser.Password = "abc123";
newUser.EmailAddress = "[email protected]";
newUser.LastLogon = DateTime.Now;
// Tell NHibernate that this object should be saved
session.Save(newUser);
// commit all of the changes to the DB and close the ISession
transaction.Commit();
session.Close();
}
}
我的app.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.MsSql2000Dialect"
/>
<add
key="hibernate.connection.driver_class"
value="NHibernate.Driver.SqlClientDriver"
/>
<add
key="hibernate.connection.connection_string"
value="Server=localhost;initial catalog=nhibernate;Integrated Security=SSPI"
/>
<!--<add value="nhibernate.bytecode.castle.proxyfactoryfactory, nhibernate.bytecode.castle" key="proxyfactory.factory_class" />-->
<!--<property name="proxyfactory.factory_class">NHibernate.ByteCode.Linfu.ProxyFactoryFactory, NHibernate.ByteCode.Linfu</property>-->
<!-- I have tried both the lines but still getting the same error -->
</nhibernate>
</configuration>
我LinFu.DynamicProxy.dll
,而不是linfu.dll
。它會起作用嗎?如果沒有,那麼我從哪裏得到這linfu.dll
? 或者還有其他解決方案嗎?
可能重複:http://stackoverflow.com/questions/956281/nhibernate-proxyexception和http://stackoverflow.com/questions/969894/error-using-nhibernate – 2009-06-10 14:07:47
還有一個bug與建立目標http://blog.frozzn.com/2010/03/nhibernatebytecodecastleproxyfactoryfac.html – cgreeno 2010-03-20 02:10:57