本文整理汇总了C#中Mapper.Subclass方法的典型用法代码示例。如果您正苦于以下问题:C# Mapper.Subclass方法的具体用法?C# Mapper.Subclass怎么用?C# Mapper.Subclass使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mapper
的用法示例。
在下文中一共展示了Mapper.Subclass方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetMapping
private static HbmMapping GetMapping()
{
var orm = new ObjectRelationalMapper();
var mapper = new Mapper(orm,
new CoolPatternsAppliersHolder(orm));
orm.TablePerClassHierarchy<Product>();
orm.TablePerClass<ActorRole>();
orm.Patterns.PoidStrategies.Add(
new GuidOptimizedPoidPattern());
orm.VersionProperty<Entity>(x => x.Version);
orm.NaturalId<Product>(p => p.Name);
orm.Cascade<Movie, ActorRole>(
Cascade.All | Cascade.DeleteOrphans);
mapper.AddPropertyPattern(mi =>
mi.GetPropertyOrFieldType() == typeof(Decimal) &&
mi.Name.Contains("Price"),
pm => pm.Type(NHibernateUtil.Currency));
mapper.AddPropertyPattern(mi =>
orm.IsRootEntity(mi.DeclaringType) &&
!"Description".Equals(mi.Name),
pm => pm.NotNullable(true));
mapper.Subclass<Movie>(cm =>
cm.List(movie => movie.Actors,
colm => colm.Index(
lim => lim.Column("ActorIndex")), m => { }));
var domainClasses = typeof(Entity).Assembly.GetTypes()
.Where(t => typeof(Entity).IsAssignableFrom(t));
return mapper.CompileMappingFor(domainClasses);
}
示例2: CustomizerCalledPerSubclass
public void CustomizerCalledPerSubclass()
{
Mock<IDomainInspector> orm = GetMockedDomainInspector();
var mapper = new Mapper(orm.Object);
bool isCalled = false;
mapper.Subclass<Inherited>(ca =>
{
ca.Should().Not.Be.Null();
isCalled = true;
});
mapper.CompileMappingFor(new[] { typeof(MyClass), typeof(Inherited) });
isCalled.Should().Be(true);
}
示例3: SetCustomQueries
public void SetCustomQueries()
{
Mock<IDomainInspector> orm = GetMockedDomainInspector();
var mapper = new Mapper(orm.Object);
mapper.Subclass<Inherited>(x =>
{
x.Loader("organization");
x.SqlInsert("INSERT INTO ORGANIZATION (NAME, ORGID) VALUES ( UPPER(?), ? )");
x.SqlUpdate("UPDATE ORGANIZATION SET NAME=UPPER(?) WHERE ORGID=?");
x.SqlDelete("DELETE FROM ORGANIZATION WHERE ORGID=?");
});
var mappings = mapper.CompileMappingFor(new[] { typeof(MyClass), typeof(Inherited) });
var hbmClass = mappings.SubClasses.Single();
hbmClass.SqlLoader.Satisfy(l => l != null && l.queryref == "organization");
hbmClass.SqlInsert.Satisfy(l => l != null && l.Text[0] == "INSERT INTO ORGANIZATION (NAME, ORGID) VALUES ( UPPER(?), ? )");
hbmClass.SqlUpdate.Satisfy(l => l != null && l.Text[0] == "UPDATE ORGANIZATION SET NAME=UPPER(?) WHERE ORGID=?");
hbmClass.SqlDelete.Satisfy(l => l != null && l.Text[0] == "DELETE FROM ORGANIZATION WHERE ORGID=?");
}
示例4: CallCustomizerOfAttributes
public void CallCustomizerOfAttributes()
{
Mock<IDomainInspector> orm = GetMockedDomainInspector();
var mapper = new Mapper(orm.Object);
mapper.Subclass<Inherited>(x =>
{
x.BatchSize(10);
x.Lazy(false);
x.EntityName("myName");
x.DynamicInsert(true);
x.DynamicUpdate(true);
x.SelectBeforeUpdate(true);
});
var mappings = mapper.CompileMappingFor(new[] { typeof(MyClass), typeof(Inherited) });
var hbmClass = mappings.SubClasses.Single();
hbmClass.BatchSize.Should().Be(10);
hbmClass.EntityName.Should().Be("myName");
hbmClass.UseLazy.Should().Be(false);
hbmClass.DynamicInsert.Should().Be(true);
hbmClass.DynamicUpdate.Should().Be(true);
hbmClass.SelectBeforeUpdate.Should().Be(true);
}
示例5: WhenCustomizeDiscriminatorValueThenSetDiscriminatorValue
public void WhenCustomizeDiscriminatorValueThenSetDiscriminatorValue()
{
Mock<IDomainInspector> orm = GetMockedDomainInspector();
var mapper = new Mapper(orm.Object);
mapper.Subclass<Inherited>(ca => ca.DiscriminatorValue(123));
var hbmEntity = mapper.CompileMappingFor(new[] { typeof(MyClass), typeof(Inherited) }).SubClasses[0];
hbmEntity.DiscriminatorValue.Should().Be("123");
}