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/

10-14 15:12