NHibernate Fluent를 사용하여 NHibernate를 처음 사용하고 있지만 가능하다면 설정 파일을 피할 수 있기를 원했습니다. 나는 프로젝트 설정을 가지고와 나는 오류가 더 persister 존재하지 불평과 Get<T>()
방법에 위로 불고 그러나 다음NHibernate w/Fluent - No persister for : [class]
[TestMethod]
public void TestMethod1()
{
var cfg = Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2008.ConnectionString(c => c.Is("[ConnectionStringHere")))
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<RedSand.Models.Data.Mapping.AddressMapping>());
var sessionFactory = cfg.BuildSessionFactory();
var session = sessionFactory.OpenSession();
session.Get<Address>(new Guid("A8B9BA39-425D-4AE6-A72E-00216ABC87C4"));
}
를 사용하여 ADRESS 개체에 대해 간단하게 노력 쿼리하고있다. 내 주소 클래스는 아래와 같습니다.
public class Address
{
public Guid AddressId { get; set; }
public string AddressType { get; set; }
public string StreetAddress { get; set; }
public Guid CityId { get; set; }
public string PostalCode { get; set; }
public bool DefaultAddress { get; set; }
public bool TermAddress { get; set; }
public string SuiteNumber { get; set; }
public float Latitude { get; set; }
public float Longitude { get; set; }
public int Accuracy { get; set; }
}
public class AddressMapping : ClassMap<Address>
{
public AddressMapping()
{
Table("tblAddress");
Not.LazyLoad();
Id(a => a.AddressId).Column("AddressID").GeneratedBy.Guid();
Map(a => a.StreetAddress).Column("Address").Length(100);
Map(a => a.CityId).Column("CityID");
Map(a => a.PostalCode).Length(50);
Map(a => a.DefaultAddress);
Map(a => a.TermAddress).Default("0");
Map(a => a.SuiteNumber).Column("SuiteNo").Length(50);
Map(a => a.Latitude);
Map(a => a.Longitude);
Map(a => a.Accuracy);
}
}
기존 데이터베이스를 사용하고 있으므로 펑키 한 테이블 구조/이름 지정을 무시하십시오.
여기에 뭔가가 있습니까? 아무도 너를 보지 못했다고 불평하는 이유를 설명하는 것을 볼 수 있습니까?
복제하려고 시도했지만 실패 할 수는 없습니다. 두 개의 별도 "주소"클래스가 정의되어 있지 않습니까? – mxmissile
어쩌면 내가했던 것과 똑같은 일을하고 새로운 애플리케이션을 만들어서 내 자신의 오류를 복제하려고 시도 했는지도 모른다. 어쩌면 현재 프로젝트에서 참조 나 다른 것이 섞여있을 수도있다. 오류가 발생 했습니까? –