C# 实体框架模型不同功能

C# 实体框架模型不同功能,c#,asp.net,entity-framework,distinct,C#,Asp.net,Entity Framework,Distinct,我在实体框架模型中工作,我正在编写一个如下表达式: medicing=objectContext.vClientMedication.Distinct().ToList() 我应该在Distinct函数中写些什么来获得唯一的BrandNameBrandName是vClientMedical的一个属性 多谢各位 medication = objectContext.vClientMedication.Select(o => o.BrandName).Distinct().ToList();

我在实体框架模型中工作,我正在编写一个如下表达式:

medicing=objectContext.vClientMedication.Distinct().ToList()
我应该在
Distinct
函数中写些什么来获得唯一的
BrandName
BrandName
是vClientMedical的一个属性

多谢各位

medication = objectContext.vClientMedication.Select(o => o.BrandName).Distinct().ToList();
您可以使用IComparer

 public class CustomEqualityComparer : IEqualityComparer<vClientMedication>
{
    #region IEqualityComparer Members

    public bool Equals(vClientMedication x, vClientMedication y)
    {
        if ((x.BrandName == y.BrandName))
            return true;
        else
            return false;
    }}
你可以使用IComparer

 public class CustomEqualityComparer : IEqualityComparer<vClientMedication>
{
    #region IEqualityComparer Members

    public bool Equals(vClientMedication x, vClientMedication y)
    {
        if ((x.BrandName == y.BrandName))
            return true;
        else
            return false;
    }}

可能重复的可能重复仅返回品牌名称,而不返回对象本身。maniacneron是正确的。正在使用ur方法返回字符串。这只返回品牌名称,而不返回对象本身。maniacneron是正确的。正在使用ur方法返回字符串。请查看更新的问题。我添加了一个使用ur代码后出错的图像。下面是另一个错误
'Pc.PrecisionCare2.DAL.Consumer.medicing.ConsumerDiicationDao.CustomEqualityComparer'未实现接口成员'System.Collections.Generic.IEqualityComparer.GetHashCode(Pc.PrecisionCare2.ModelTypes.vClientMedication)
public int GetHashCode(vClientMedication对象){return base.GetHashCode();}将此函数添加到CustomEqualityComparer类请查看更新的问题。我添加了使用ur代码后出现的错误图像。下面是另一个错误
“Pc.PrecisionCare2.DAL.Consumer.medicing.ConsumerDiicationDao.CustomEqualityComparer”未实现接口成员“System.Collections.Generic.IEqualityComparer.GetHashC”ode(Pc.PrecisionCare2.ModelTypes.vClientMedication)
public int GetHashCode(vClientMedication obj){return base.GetHashCode();}将此函数添加到CustomEqualityComparer类中