4

ODATA サービスによって公開されるすべてのエンティティの名前空間を変更したいと考えています。

現在、彼らは持っています:Core.DomainModel.Entities.Databaseそれを消費するとき、これは少し長いです.

経由で設定しようとしましbuilder.Namespace = "MyModel";たが、効果がありませんでした。

var builder = new ODataConventionModelBuilder();
builder.Namespace = "MyModel";

次に、そのように各エンティティに設定する必要があると考えました

builder.EntitySet<Foo>("Foo").EntityType.Namespace = "MyModel";

しかし、すべてのエンティティを通過する必要がある場合、それはすぐに手に負えなくなります:(

それから私はこれを試しました

foreach (var entity in builder.EntitySets)
{
    entity.EntityType.Namespace = "MyModel";
}

しかし、それもすべてを含むわけではありません。ENUM、ComplexType、および一部のエンティティが正しい名前空間を取得していないことに気付きました... :/

だから私の質問はです。すべてのエンティティの名前空間を設定するにはどうすればよいですか?

4

2 に答える 2

0

各エンティティに名前空間を設定するために行ったことは正しいです.builder.Namespaceは、すべてのエンティティではなく、コンテナの名前空間用です。

于 2015-04-14T07:55:02.043 に答える