[HierarchyRoot]
public class BaseEntity : Entity
{
    public BaseEntity(Guid id)
        : base(id)
    {
    }

    [Field, Key]
    public Guid Id { get; set; }

    [Field(DefaultValue = "2D9BAF84-E13B-45B3-AC84-41C39BB15501")]
    public Status Text { get; set; }
}

[HierarchyRoot]
public class Status : Entity
{
    [Field, Key]
    public Guid Id { get; private set; }

    [Field(Length = 100)]
    public string Text { get; set; }
}

This setup fails with:

System.InvalidCastException occurred
  Message=Invalid cast from 'System.String' to 'ConsoleApplication1.Status'.
  Source=mscorlib
  StackTrace:
       at System.Convert.DefaultToType(IConvertible value, Type targetType, IFormatProvider provider)
       at System.String.System.IConvertible.ToType(Type type, IFormatProvider provider)
       at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
       at System.Convert.ChangeType(Object value, Type conversionType)
       at Xtensive.Orm.Building.Builders.ValueTypeBuilder.AdjustValue(FieldDef targetField, Object value) in c:\Projects\dataobjects.net\Xtensive.Orm\Xtensive.Orm\Orm\Building\Builders\ValueTypeBuilder.cs:line 39
  InnerException:

>   Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.ValueTypeBuilder.AdjustValue(Xtensive.Orm.Building.Definitions.FieldDef targetField, object value) Line 39 + 0xb bytes  C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.AttributeProcessor.ProcessDefault(Xtensive.Orm.Building.Definitions.FieldDef fieldDef, Xtensive.Orm.FieldAttribute attribute) Line 190 + 0x11 bytes C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.AttributeProcessor.Process(Xtensive.Orm.Building.Definitions.FieldDef fieldDef, Xtensive.Orm.FieldAttribute attribute) Line 85 + 0xb bytes  C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.ModelDefBuilder.DefineField(System.Reflection.PropertyInfo propertyInfo, Xtensive.Orm.FieldAttribute[] fieldAttributes) Line 273 + 0xb bytes    C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.ModelDefBuilder.ProcessProperties(Xtensive.Orm.Building.Definitions.TypeDef typeDef, Xtensive.Orm.Building.Definitions.HierarchyDef hierarchyDef) Line 149 + 0xb bytes  C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.ModelDefBuilder.ProcessType(System.Type type) Line 93 + 0xb bytes   C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.ModelDefBuilder.ProcessTypes() Line 56 + 0x8 bytes  C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.ModelDefBuilder.Run() Line 32 + 0x5 bytes   C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.ModelBuilder.Run() Line 37 + 0x5 bytes  C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.DomainBuilder.BuildModel() Line 214 + 0x5 bytes C#
    Xtensive.Orm.dll!Xtensive.Orm.Building.Builders.DomainBuilder.BuildDomain(Xtensive.Orm.Configuration.DomainConfiguration configuration, Xtensive.Orm.Building.Builders.DomainBuilderConfiguration builderConfiguration) Line 63 + 0x5 bytes C#
    Xtensive.Orm.dll!Xtensive.Orm.Upgrade.UpgradingDomainBuilder.BuildStageDomain(Xtensive.Orm.Upgrade.UpgradeStage stage) Line 82 + 0x3a bytes C#
    Xtensive.Orm.dll!Xtensive.Orm.Upgrade.UpgradingDomainBuilder.Build(Xtensive.Orm.Configuration.DomainConfiguration configuration) Line 62 + 0xa bytes    C#
    Xtensive.Orm.dll!Xtensive.Orm.Domain.Build(Xtensive.Orm.Configuration.DomainConfiguration configuration) Line 281 + 0x8 bytes   C#
    ConsoleApplication1.exe!ConsoleApplication1.Program.Main(string[] args) Line 32 + 0x8 bytes C#

asked Nov 09 '11 at 03:23

xumix's gravatar image

xumix
425757682


One Answer:

Done in revision 7934 (9f7fb4e92e70).

answered Nov 18 '11 at 02:41

Dmitri%20Maximov's gravatar image

Dmitri Maximov
22111211

Nice job! Thanks.

(Nov 18 '11 at 02:44) xumix xumix's gravatar image
Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
toggle preview

powered by OSQA