How are you building your configuration?
More specifically, how are you adding the assembly?

   Diego


On Thu, Mar 4, 2010 at 19:06, tqwhite <[email protected]> wrote:

> I've spent the last two days trying to get my first bit of nHibernate
> to work. I am in "No Persister" hell.
>
> Following is everything I have relative to this problem (what I've
> tried, environment, file names, xml, classes, error text).
>
> Please, for the love of all that is holy, help me!!
>
> tqii
>
> What I've tried:
>
> I've moved the file around everywhere that makes sense. It is
> presently in the same directory as the class.
> I took out the class definition. Nothing changes at all.
> I inserted stupid assembly and namespace definitions. Nothing changes
> at all.
> I recreated my starter project a few times. Doesn't matter.
> All of the alternatives to "embedded resource" that seemed relevant.
> It is presently embedded.
> I changed the code to refer to a new class with a different name but
> left the hbm unchanged. Same error, different name.
>
> Environment:
>
> Windows 7
> ASP.NET MVC
> ASP.NET 3.5 sp1
> Visual Studio 2008
>
> File names:
>
> In the same directory
> studentBase.cs
> studentBase.hbm.xml
>
> Also, hibernate.cfg.xml is in the top directory of the project. I used
> the sample with no changes except the connection string. I think this
> is being found properly because I can induce errors by changing it.
>
> StudentBase.hbm.xml:
>
> <?xml version="1.0" encoding="utf-8" ?>
> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
> assembly="ExpressBook" namespace="ExpressBook">
>  <class name="ExpressBook.Services.BaseDataObjects.StudentBase,
> ExpressBook">
>    <id name="id" column="id" type="int32" unsaved-value="0">
>      <generator class="native">
>      </generator>
>    </id>
>    <property name="first" column="first" type="text" not-null="false"/
> >
>    <property name="last" column="last" type="text" not-null="false"/>
>  </class>
>
> </hibernate-mapping>
>
> StudentBase.cs:
>
> using System;
> using System.Collections.Generic;
> using System.Linq;
> using System.Web;
>
> namespace ExpressBook.Services.BaseDataObjects
> {
>    public class StudentBase
>    {
>        public virtual int id { get; set; }
>        public virtual string first { get; set; }
>        public virtual string last { get; set; }
>    }
> }
>
> The Offending Code:
>
> Line 20:             NHibernate.ISession session =
> sessionFactory.OpenSession();
> Line 21:
> Line 22:             return
> session.Get<Services.BaseDataObjects.StudentBase>(id);
>
> The Error Message:
>
> Stack Trace:
>
>
> [MappingException: No persister for:
> ExpressBook.Services.BaseDataObjects.StudentBase]
>   NHibernate.Impl.SessionFactoryImpl.GetEntityPersister(String
> entityName) +103
>   NHibernate.Event.Default.DefaultLoadEventListener.OnLoad(LoadEvent
> event, LoadType loadType) +112
>   NHibernate.Impl.SessionImpl.FireLoad(LoadEvent event, LoadType
> loadType) +159
>   NHibernate.Impl.SessionImpl.Get(String entityName, Object id) +186
>   NHibernate.Impl.SessionImpl.Get(Type entityClass, Object id) +137
>   NHibernate.Impl.SessionImpl.Get(Object id) +175
>   ExpressBook.Models.Student.getStudentById(Int32 id) in C:\Users
> \tqwhite\Documents\Visual Studio 2008\Projects\ExpressBook\ExpressBook
> \Models\Student.cs:22
>   ExpressBook.Controllers.DistrictController.getStudentById(Int32 id)
> in C:\Users\tqwhite\Documents\Visual Studio 2008\Projects\ExpressBook
> \ExpressBook\Controllers\DistrictController.cs:22
>   lambda_method(ExecutionScope , ControllerBase , Object[] ) +79
>   System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase
> controller, Object[] parameters) +17
>   System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext
> controllerContext, IDictionary`2 parameters) +178
>
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext
> controllerContext, ActionDescriptor actionDescriptor, IDictionary`2
> parameters) +24
>
> System.Web.Mvc.<>c__DisplayClassd.<InvokeActionMethodWithFilters>b__a()
> +52
>
>
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter
> filter, ActionExecutingContext preContext, Func`1 continuation) +254
>
> System.Web.Mvc.<>c__DisplayClassf.<InvokeActionMethodWithFilters>b__c()
> +19
>
>
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext
> controllerContext, IList`1 filters, ActionDescriptor actionDescriptor,
> IDictionary`2 parameters) +192
>
> System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext
> controllerContext, String actionName) +314
>   System.Web.Mvc.Controller.ExecuteCore() +105
>   System.Web.Mvc.ControllerBase.Execute(RequestContext
> requestContext) +39
>
>
> System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext
> requestContext) +7
>   System.Web.Mvc.<>c__DisplayClass8.<BeginProcessRequest>b__4() +34
>   System.Web.Mvc.Async.<>c__DisplayClass1.<MakeVoidDelegate>b__0()
> +21
>
>
> System.Web.Mvc.Async.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult
> _) +12
>
>   System.Web.Mvc.Async.WrappedAsyncResult`1.End() +59
>   System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult
> asyncResult) +44
>
>
> System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult
> result) +7
>
>
>
> System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
> +8679150
>
>   System.Web.HttpApplication.ExecuteStep(IExecutionStep step,
> Boolean& completedSynchronously) +155
>
> Version Information: Microsoft .NET Framework Version:2.0.50727.4927;
> ASP.NET Version:2.0.50727.4927
>
> --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<nhusers%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/nhusers?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to