Tag: 映射

如何使用多个表映射单个实体

我想从单个Entity类的两个表中获取数据。 怎么样?? public class HomeViewModel { [Key] [Column(“candidate_ID”)] public int candidateID { get; set; } [Column(“first_name”)] public string firstName { get; set; } [Column(“last_name”)] public string lastName { get; set; } public string emailID { get; set; } public string mb_country_code { get; set; } public int mobile_no { get; set; } } 上面的实体类包含6个属性,其中3个属性表示一个table1,3个表示table2。 在数据库表1中,将candidate_id保持为主键,而表2将candidate_id保持为外键 […]

映射两个相同类型的对象(不包括某些字段)的最佳方法是什么?

我之前在这里发布了我的问题,但我没有得到任何回复原因 – 我猜 – 它太通用了。 我会试着更简洁。 我有两个相同类型的对象,我想映射一些属性并排除其他属性。 我想要做的是将对象保存在缓存中并稍后使用具有特定属性的属性(字段)获取它。 我看过Automapper,但是我没有找到任何适合我的东西,所以我想要实现我自己的系统。 我创建了一个属性: [AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = false)] public class FilterFieldAttribute: Attribute { } 并在我需要包含的字段上装饰了一个类: public class OrdersViewModel : BaseViewModel { … [FilterField] [DisplayName(“Order Number:”)] public string OrderNumber { get; set; } [FilterField] [DisplayName(“From date:”)] public DateTime FromDate { get; set; } [FilterField] [DisplayName(“To date:”)] public […]

数据库主键C#映射 – 字符串或int

在Northwind Starters Kit中,数据库中的主键映射到C#中的字符串。 这是好习惯吗? 如果是这样,为什么? thx,Lieven Cardoen ps:对不起可能是错误的问题…… 在Northwind Starters Kit中,某些表具有数据类型为int的自动增量主键,而其他表具有数据类型为nchar(5)的非自动增量主键。 为什么是这样? 好吧,显然一些主键只是代码(nchar(5)格式)。 很抱歉用了你的时间。 我认为数据类型int被映射到C#字符串,这对我来说似乎非常错误(但事实并非如此)。

如何在代码外定义AutoMapper映射,即在XML文件中或使用不同的方法进行完全可配置的对象映射?

编辑:最初我打算使用AutoMapper来实现我的目标,但我必须知道AutoMapper并不打算以这种方式工作。 它为您提供了创建配置文件的可能性,但在我的情况下(完全可配置)我需要为每个参数组合一个配置文件,所以我想出了一个自己的方法,看看答案。 从AutoMapper wiki我学会了创建一个简单的映射 Mapper.CreateMap().ForMember(dest => dest.Title, opt => opt.MapFrom(src => src.Title)); Mapper.CreateMap().ForMember(dest => dest.EventDate, opt => opt.MapFrom(src => src.EventDate.Date)); Mapper.CreateMap().ForMember(dest => dest.EventHour, opt => opt.MapFrom(src => src.EventDate.Hour)); Mapper.CreateMap().ForMember(dest => dest.EventMinute, opt => opt.MapFrom(src => src.EventDate.Minute)); 像两个class public class CalendarEvent { public DateTime EventDate; public string Title; } public class CalendarEventForm { public DateTime EventDate […]

使用数据注释进行多对多映射

[Table(“UserMaster”)] public class UserMaster { public UserMaster() { this.Roles = new List(); } [Key] public int UserId { get; set; } public string UserName { get; set; } public ICollection Roles { get; set; } } [Table(“Role”)] public class Role { public Role() { this.Users = new List(); } public int RoleId{ get; set; } […]

使用AutoMapper自定义映射

我有两个非常简单的对象: public class CategoryDto { public string Id { get; set; } public string MyValueProperty { get; set; } } public class Category { public string Id { get; set; } [MapTo(“MyValueProperty”)] public string Key { get; set; } } 使用AutoMapper将CategoryDto映射到CategoryDto时,我想要以下行为: 除了具有MapTo属性的属性之外,应该像往常一样映射属性。 在这种情况下,我必须读取Attribute的值来查找target属性。 source属性的值用于在destination属性中查找要注入的值(借助字典)。 一个例子总是好于1000字…… 例: Dictionary keys = new Dictionary { { “MyKey”, “MyValue” […]

检测是否基于纬度/经度的多边形点

我想在服务器端仅使用C#检测基于纬度/经度的坐标是否在由基于纬度/经度的点组成的区域(多边形)内。 我认为这样做的正确方法是光线投射,但也许已经有一个C#实现,因为它不是微不足道的? 此外,我知道SQL Server有一些几何function,如STIntersects但为了使用它,我需要运行SQL Server 2008,每次检查都涉及数据库连接,这是不可取的。

使用AutoMapper将对象的属性映射到字符串

我有以下型号: public class Tag { public int Id { get; set; } public string Name { get; set; } } 我希望能够使用AutoMapper将Tag类型的Name属性映射到我的一个viewmodel中的字符串属性。 我已经创建了一个自定义解析器来尝试使用以下代码来处理此映射: public class TagToStringResolver : ValueResolver { protected override string ResolveCore(Tag source) { return source.Name ?? string.Empty; } } 我使用以下代码进行映射: Mapper.CreateMap() .ForMember(d => d, o => o.ResolveUsing()); 当我运行应用程序时,我收到错误: 仅对类型上的顶级单个成员支持成员的自定义配置。 我究竟做错了什么?

entity framework – 如何在辅助表中的非主键列上连接表?

我想使用entity framework加入2个表。 我希望第二个表的连接位于非主键列上。 例如,我有一个带有字段的表Foo Foo.Id (PK) Foo.DbValue 和桌子吧 Bar.Id (PK) Bar.DbValue Bar.Description 我想在DbValue字段中加入Foo到EF的Bar。 在hibernate / nhibernate中,可以通过向多对一添加列参数来实现此目的。 大致是这样的 如果有人知道如何在EF中这样做,请提前感谢。

如何获取当前位置或移动到Xamarin.Forms.Map中的当前位置

由于Map已经显示了用户位置(使用IsShowingUser),我只想缩放到此位置。 这很容易实现,还是我需要在每个平台上获取位置,因为我找不到任何GeoLocation对象。 只有GeoCoder ……这不是缩放到用户位置的常用用例吗?