EF人民,
我的理解是,新创建的元数据公共API将使我们能够向模型中添加足够的元数据,以便可以调用TVF并使其可组合。
如果有人能指出正确的方向,我将不胜感激。如果没有可组合的TVF,我必须绕过一些主要工作。
从单元测试来看,这似乎是一条长线思路:
var functionImport = EdmFunction.Create()
"Foo", "Bar", DataSpace.CSpace,
new EdmFunctionPayload
{
IsComposable = true,
IsFunctionImport = true,
ReturnParameters = new[]
{
FunctionParameter.Create("functionname", EdmType.GetBuiltInType()
EdmConstants.ReturnType,
TypeUsage.Create(collectionTypeMock.Object),
ParameterMode.ReturnValue),
}
});
...
entityContainer.AddFunctionImport(functionImport);
谢谢,
布莱恩·F
最佳答案
是的,现在可以在EF6.1中使用。我实际上创建了一个自定义模型约定,该约定允许使用新打开的映射API在CodeFirst中使用存储功能。该约定在NuGet http://www.nuget.org/packages/EntityFramework.CodeFirstStoreFunctions上可用。这是包含所有详细信息的博客文章的链接:http://blog.3d-logic.com/2014/04/09/support-for-store-functions-tvfs-and-stored-procs-in-entity-framework-6-1/。该项目是开源的,您可以在此处获取资源:https://codefirstfunctions.codeplex.com/
关于entity-framework - 在6.1.0-alpha1-30113中编码第一个TVF,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21141189/