我正在尝试使用OData对数据库中设置为varchar类型的值运行整数比较(例如,大于或小于)。在我执行查询或映射时,有一种方法可以告诉Telerik OpenAccess将字段转换为整数类型,从而将更改数据库字段的解决方案改为int类型的解决方案?
提前致谢。
答案 0 :(得分:0)
与此类似:Handling Dates with OData v4, EF6 and Web API v2.2
再添加一个属性:
public partial class Title
{
public int Id { get; set; }
public string Name { get; set; }
public string StringProperty { get; set; }
}
public partial class Title
{
[NotMapped]
public int IntProperty
{
get
{
return StringProperty==null?0;Int32.Parse(StringProperty);;
}
set
{
StringProperty = value.ToString();
}
}
}
更新模型:
public static IEdmModel GetModel()
{
ODataConventionModelBuilder builder = new ODataConventionModelBuilder();
EntityTypeConfiguration<Title> titleType= builder.EntityType<Title>();
titleType.Ignore(t => t.StringProperty);
titleType.Property(t => t.IntProperty ).Name = "MyProperty";
builder.EntitySet<Title>("Titles");
builder.Namespace = typeof(Title).Namespace;
return builder.GetEdmModel();
}