質問: 私はEFコアを使用しようとしていますが、私は自分のテーブルの1つでSQLサーバーのデータ型`hierarchyid`を使用する必要があります。 c#クラスのフィールドをhierarchyid型に指定することは可能ですか。 EFを壊すことなく、手動でEFが列の`hierarchyid` IDを作成するように作成できますか。 編集:私はこれをやろうとしました: ``` public class Entity { public int Id { get; set; } public string Name { get; set; } public SqlHierarchyId HierarchyId { get; set; } } ``` これがEFコア2.1でサポートされていることが示唆されているように、しかし私はadd-migrationを実行するとき私はこのエラーを得ます: ``` The current CSharpHelper cannot scaffold literals of type 'Microsoft.SqlServer.Types.SqlHierarchyId'. Configure your services to use one that can. ```
回答: SqlHierarchyIdパッケージが入っているNugetパッケージを探している人のために、それは`Microsoft.SqlServer.Types` 。 パッケージ情報には、このパッケージにはDbGeography型とDbGeometery型が含まれていますが、SqlHierarchyId型も含まれています。 また、クラスがあることに注意`SqlHierarchyId`ない、 `HierarchyId` (私が探していたように)。