Rob Conery による大規模な「動的 ORM」を使用して、DB にクエリを実行しようとしています (これまでのところ、うまく機能しています)。テーブルに Geography フィールドを追加したときに問題が発生しました。
エラーは次のとおりです。
UdtTypeName property must be set for UDT parameters
更新 (2011 年 4 月 14 日):例外をスローしている ADO メソッドは、例外.ExecuteNonQuery();
をスローする Massive.cs のメソッドです。
public virtual int Execute(IEnumerable<DbCommand> commands) {
var result = 0;
using (var conn = OpenConnection()) {
using (var tx = conn.BeginTransaction()) {
foreach (var cmd in commands) {
cmd.Connection = conn;
cmd.Transaction = tx;
result += cmd.ExecuteNonQuery();
}
tx.Commit();
}
}
return result;
}
それをスローする特定の行は次のとおりです。result += cmd.ExecuteNonQuery();
テーブルの重要な部分は次のとおりです。
- PlaceId - bigint PK
- 名前 - nvarchar
- GeoLocation (地理タイプ - ポイントとして)
- ...
Massive を使用している他のユーザーを見つけるのは難しいですが、私はMassive の GitHub Issues タブでエラーを報告しました。ここで Massiveのソース コードを表示できます。