edmxファイルをカスタムツール実行するとFK名が1,2,3となってどれとリレーションしているかわからない問題をジェネレータを改造することで解消
5012 ワード
多重でリレーションしているテーブルをDBからコードを自動生成すると以下のように変なネーミングになってどのカラムとリレーションしているかわからなくなります(相手のテーブル名順)。
TableA.cs
using System;
using System.Collections.Generic;
public partial class TableA
{
.
.
.
public virtual TableB TableB { get; set; }
public virtual TableB TableB1 { get; set; }
public virtual TableB TableB2 { get; set; }
public virtual TableB TableB3 { get; set; }
}
ttファイルを以下のように変えると解消されるよ。
xxbefore.tt
// 50行目くらい
this.<#=code.Escape(navigationProperty)#> = new HashSet<<#=typeMapper.GetTypeName(navigationProperty.ToEndMember.GetEntityType())#>>();
// 200行目くらい
_code.Escape(navProp),
↓↓↓↓↓↓↓↓↓↓↓
xxafter.tt
// 50行目くらい
this.<#=code.Escape(navigationProperty.RelationshipType).Replace("_","")#> = new HashSet<<#=typeMapper.GetTypeName(navigationProperty.ToEndMember.GetEntityType())#>>();
// 200行目くらい
_code.Escape(navProp.RelationshipType).Replace("_",""),
ビバ、エドマックス!
Author And Source
この問題について(edmxファイルをカスタムツール実行するとFK名が1,2,3となってどれとリレーションしているかわからない問題をジェネレータを改造することで解消), 我々は、より多くの情報をここで見つけました https://qiita.com/kotaroino@github/items/442b38ed7e0b340dba11著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .