4

以下に示すように、メソッド シグネチャが値型から null 許容値型に変更されてオーバーロードされた多くのメソッドを含むライブラリがあります。

A.)IsEmpty(int obj, int defaultValue)

B.)IsEmpty(int? obj, int defaultValue)

ご覧のとおり、唯一の違いは B が nullable であることです。私のオフィスのほとんどのワークステーションでは、このオーバーロードがコンパイルされ、型が真に異なるものとして認識されます。

しかし、何らかの理由で、すべてのマシンと VM がコンパイルされません。なぜこれが起こっているのか、私たちは現在困惑しています。私が使用しているマシンは、動作中/コンパイル中の他のマシンのミラー イメージに近い必要があります。

コンパイル中に発生するエラーの例を次に示します。

  • エラー 28 次のメソッドまたはプロパティの呼び出しがあいまいです: 'BayTech.Common.Fix.IfEmpty(System.Guid, System.Guid)' と 'BayTech.Common.Fix.IfEmpty(System.Guid, System.Guid?) ' C:\Projects\Applications\JukeWeb\BayTech\Internal\Common Library\VS2010\Apps\BayTech.Common\Conversion\Fix.Empty.SL.cs 55 17 BayTech.Common

  • エラー 11 次のメソッドまたはプロパティの呼び出しがあいまいです: 'BayTech.Common.Fix.IfEmpty(System.DateTime, System.DateTime)' と 'BayTech.Common.Fix.IfEmpty(System.DateTime, System.DateTime?) ' C:\Projects\Applications\JukeWeb\BayTech\Internal\Common Library\VS2010\Apps\BayTech.Common\Conversion\Fix.Empty.SL.cs 35 17 BayTech.Common

  • エラー 165 次のメソッドまたはプロパティの呼び出しがあいまいです: 'BayTech.Common.Fix.IfEmpty(string, System.Guid)' と 'BayTech.Common.Fix.IfEmpty(string, System.Guid?)' C:\ Projects\Applications\JukeWeb\BayTech\Internal\Common Library\VS2010\Apps\BayTech.Common\Conversion\Fix.IfEmpty.Xml.cs 259 17 BayTech.Common

なぜこれが起こるのか誰にも分かりますか?

環境設定に関する情報を次に示します。

  • VS2010
  • Idealblade (最新のインストール)
  • Just-In-Code を含むインストールされた Telerik コントロール
  • VS および Windows 7 に含まれるすべてのサービス パック
  • VS および Windows 7 に含まれるすべてのサービス パック
  • Win7 アルティメット
  • SQL 2008 R2
  • T4 テンプレート、PostSharp、
  • Codesmith Professional インストール済み
  • VisualSVNがインストールされています
  • DevExpress
  • SQLComplete がインストールされている
4

1 に答える 1