C# 找不到复杂类型
因此,我在EF form中包含了一个存储过程。我通过执行导入功能将SP添加到EF中。我选择从SP列C# 找不到复杂类型,c#,entity-framework,tsql,C#,Entity Framework,Tsql,因此,我在EF form中包含了一个存储过程。我通过执行导入功能将SP添加到EF中。我选择从SP列FolderColumn创建一个复杂类型。选择Run Custom Tool后,SP被添加到我的实体的上下文cs文件中: public virtual ObjectResult<FolderColumn> GetColumnFolderModel(Nullable<long> caseid, Nullable<long> folderid, Nullabl
FolderColumn
创建一个复杂类型。选择Run Custom Tool
后,SP被添加到我的实体的上下文cs
文件中:
public virtual ObjectResult<FolderColumn> GetColumnFolderModel(Nullable<long> caseid, Nullable<long> folderid, Nullable<long> userid)
{
var caseidParameter = caseid.HasValue ?
new ObjectParameter("caseid", caseid) :
new ObjectParameter("caseid", typeof(long));
var folderidParameter = folderid.HasValue ?
new ObjectParameter("folderid", folderid) :
new ObjectParameter("folderid", typeof(long));
var useridParameter = userid.HasValue ?
new ObjectParameter("userid", userid) :
new ObjectParameter("userid", typeof(long));
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<FolderColumn>("GetColumnFolderModel", caseidParameter, folderidParameter, useridParameter);
}
任何对FolderColumn
的引用都会抛出
找不到类型或命名空间名称“FolderColumn”(是否缺少using指令或程序集引用?
为什么我的新复杂类型不是上下文实体的一部分?复杂类型表示结构化但未存储的内容。实体都存储在表中;复杂类型可以从SP、视图等返回。因此这是我希望看到的。但我无法引用它。例如,在所讨论的SP上,定义为:公共虚拟对象结果GetColumnFolderModel(Nullable caseid、Nullable folderid、Nullable userid){}
引发错误:找不到类型或命名空间名称“FolderColumn”(是否缺少using指令或程序集引用?
.Np。我意识到这个问题不清楚。我更新了问题。
<ComplexType Name="FolderColumn">
<Property Type="Int64" Name="id" Nullable="false" />
<Property Type="String" Name="Display" Nullable="false" MaxLength="256" />
<Property Type="String" Name="Name" Nullable="false" MaxLength="256" />
<Property Type="String" Name="Width" Nullable="true" MaxLength="12" />
<Property Type="Boolean" Name="Sortable" Nullable="true" />
<Property Type="String" Name="Align" Nullable="true" MaxLength="48" />
<Property Type="Boolean" Name="Hide" Nullable="true" />
</ComplexType>
BriefcaseEntities context = new BriefcaseEntities();
context.FolderColumn // <--- Not part of the context