Ich bin ein Neuling bei NHibernate also bitte einfach auf mir gehen, wenn ich eine dumme Frage gestellt habe ...NHibernate Tutorial Laufzeitfehler: HibernateException
ich folgende bin das Tutorial für NHibernate geschrieben here und sind immer ein Laufzeitfehler vom Typ „HibernateException“
der betreffende Code sieht wie folgt aus:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FirstSolution;
using NHibernate.Cfg;
using NHibernate.Tool.hbm2ddl;
using NUnit.Framework;
namespace FirstSolution.Tests
{
[TestFixture]
public class GenerateSchema_Fixture
{
[Test]
public void Can_generate_schema()
{
var cfg = new Configuration();
cfg.Configure();
cfg.AddAssembly(typeof(Product).Assembly);
new SchemaExport(cfg).Execute(false, true, false);
}
}
}
die Linie ich die Störung erhalte an ist:
cfg.AddAssembly(typeof(Product).Assembly);
Die am weitesten innen Ausnahme ist:
The IDbCommand and IDbConnection implementation in the assembly System.Data.SqlServerCe could not be found
Und hier ist mein Stack-Trace:
at NHibernate.Connection.ConnectionProvider.ConfigureDriver(IDictionary`2 settings)
at NHibernate.Connection.ConnectionProvider.Configure(IDictionary`2 settings)
at NHibernate.Connection.ConnectionProviderFactory.NewConnectionProvider(IDictionary`2 settings)
at NHibernate.Tool.hbm2ddl.SchemaExport.Execute(Action`1 scriptAction, Boolean export, Boolean justDrop)
at NHibernate.Tool.hbm2ddl.SchemaExport.Execute(Boolean script, Boolean export, Boolean justDrop)
at FirstSolution.Tests.GenerateSchema_Fixture.Can_generate_schema() in C:\Users\Kash\Documents\Visual Studio 2010\Projects\FirstSolution\FirstSolution\GenerateSchema_Fixture.cs:line 23
at HibernateUnitTest.Form1.button1_Click(Object sender, EventArgs e) in C:\Users\Kash\Documents\Visual Studio 2010\Projects\FirstSolution\HibernateUnitTest\Form1.cs:line 23
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at HibernateUnitTest.Program.Main() in C:\Users\Kash\Documents\Visual Studio 2010\Projects\FirstSolution\HibernateUnitTest\Program.cs:line 18
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
ich sicher gemacht haben, dass System.Data.SqlServerCe
referenziert ist und dass seine Copy Local
Eigenschaft auf True
. Der Fehler besteht jedoch weiterhin. Ihre Hilfe wäre willkommen. Vielen Dank.
Haben Sie den Verweis auf 'System.Data.SqlServerCe' sowohl zum Hauptprojekt als auch zum Testprojekt hinzugefügt? Testen Sie auf x86 oder x64-Computer? – surfen
Hi surfen, ich habe gerade versucht, die Referenz zum Testprojekt hinzuzufügen und trotzdem das gleiche Ergebnis zu bekommen. Ich teste auf einer x64-Maschine. – Kashif
Ich habe vergessen, die Eigenschaft 'Copy Local' für die Referenz im Testprojekt auf 'true' zu setzen. Es stürzt nicht mehr in dieser Zeile ab. Ich muss sehen, ob es als nächstes funktioniert. Vielen Dank! – Kashif