0

我正在使用 ORM 版本 2013.2.702.1 和 ASP.NET MVC 4.5。我正在尝试像文档一样使用 WithCascadeDelete:Cascade Delete on Class Level,但该方法不可用:

using FluentModel.Entity;
using Telerik.OpenAccess.Metadata;
using Telerik.OpenAccess.Metadata.Fluent;

namespace FluentModel.Map
{
public class ProdutoMap
{
    public static MappingConfiguration<Produto> CreateConfiguration()
    {
        var produtoMapping = new MappingConfiguration<Produto>();

        produtoMapping.MapType(p => new
        {
            p.Id,
            p.Nome,
            p.Preco,
            p.Descricao,
            p.DataCadastro

        }).ToTable("produto");

        produtoMapping.HasProperty(p => p.Id).IsIdentity(KeyGenerator.Autoinc);
        produtoMapping.HasProperty(p => p.Nome).HasLength(60);
        produtoMapping.HasProperty(p => p.Preco).IsCurrency();
        produtoMapping.HasProperty(p => p.Descricao).HasLength(60);

        produtoMapping.HasAssociation(p => p.Categoria)
                   .WithOpposite(c => c.Produtos)
                   .HasConstraint((p, c) => p.CategoriaId == c.Id)
                   .ToColumn("Categoria_id");


        return produtoMapping;
    }
  }
}

如果我尝试使用:

produtoMapping.MapType().WithCascadeDelete()

编译器无法解析该方法。

任何想法为什么?

4

1 回答 1

0

目前,OpenAccess ORM 有一个 Q3 2013 Beta 版本,其中包含 Cascade Delete 功能。登录帐户后,您可以从此处下载。

让我补充一点,级联删除功能仅适用于使用 Verticle Inheritance 和Multi-Table Entities的模型。

于 2013-09-30T13:09:51.993 回答