📄 dynamicmapcomponenttuplizer.cs
字号:
using System;
using NHibernate.Properties;
namespace NHibernate.Tuple.Component
{
/// <summary>
/// A <see cref="IComponentTuplizer"/> specific to the dynamic-map entity mode.
/// </summary>
[Serializable]
public class DynamicMapComponentTuplizer : AbstractComponentTuplizer
{
public DynamicMapComponentTuplizer(Mapping.Component component) : base(component) { }
public override System.Type MappedClass
{
get { return typeof(System.Collections.IDictionary); }
}
protected internal override IInstantiator BuildInstantiator(Mapping.Component component)
{
return new DynamicMapInstantiator();
}
protected internal override IGetter BuildGetter(Mapping.Component component, Mapping.Property prop)
{
return BuildPropertyAccessor(prop).GetGetter(null, prop.Name);
}
protected internal override ISetter BuildSetter(Mapping.Component component, Mapping.Property prop)
{
return BuildPropertyAccessor(prop).GetSetter(null, prop.Name);
}
private IPropertyAccessor BuildPropertyAccessor(Mapping.Property property)
{
return PropertyAccessorFactory.DynamicMapPropertyAccessor;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -