EDMX复杂类型

时间:2017-01-13 20:21:29

标签: sql asp.net entity-framework entity-framework-6

我在我的mvc应用程序(asp.net)中使用Entity Framework。我正在使用一堆存储过程没有问题,除了其中一个。此存储过程如下所示:

select
    @PosteID = HpoPosteID
from
    [Corporatifs_AQ].[dbo].[RhEmplPost]
where
    HemEmployeID = @HemEmployeID

exec [dbo].[usp_RhServiceSuperieurPoste] @PosteID, @CompOrgaServ OUTPUT

select
    distinct
    emp.HemPrenom,
    emp.HemNom,
    emp.HemInitiale,
    aff.HafDescription,
    emp.HemEmployeID,
    pos.HcoCompOrgaID
from
    dbo.ObtenirCompOrgaEnfants( NULL,@CompOrgaServ,1,NULL ) enf 
    join [dbo].[RhCompPost] pos on pos.HcoCompOrgaID = enf.HcoCompOrgaID
    join [dbo].[RhAffectation] aff on aff.HpoPosteID = pos.HpoPosteID
    join [dbo].[RhPoste] poste on aff.HpoPosteID =  poste.HpoPosteID
    join [dbo].[RhEmploye] emp on emp.HemEmployeID = aff.HemEmployeID
where
    ((HemNom LIKE @HemLettres) OR
     (HemPrenom LIKE @HemLettres))

实体框架正在处理这个过程,就像它返回一个int(HpoPosteID),但它也返回(选择不同的)更多的值,所以我需要一个复杂的类型。它之前有用,但我删除了edmx以创建一个新的,我不知道发生了什么..

在我删除的edmx中,调用该过程的函数如下所示:

public virtual ObjectResult<usp_RhEmployeNomPrenomSelect_Result> usp_RhEmployeNomPrenomSelectService(string hemLettres, Nullable<int> hemDate, Nullable<int> hemEmployeID)
    {...

请注意,返回的complexe类型是RhEmployeNomPrenomSelect,它是另一个存储过程的复杂类型(RhEmployeNomPrenomSelect),但RhEmployeNomPrenomSelectService返回相同的字段,因此实体框架重用了该对象

但是现在,它按照相同的程序返回一个int:

 public virtual int usp_RhEmployeNomPrenomSelectService(string hemLettres, Nullable<int> hemDate, Nullable<int> hemEmployeID)
    {

0 个答案:

没有答案