VS2017では、QAの新しい構成を設定しようとしています。私は "QA"として設定を作成し、 "リリース"から設定をコピーしています。 "Create new project configurations"チェックボックスをオンにしました。VS2017 C#新しいビルド構成の作成ステートメントを使用したブレーク
ドロップダウンメニューでQAビルドに切り替えると、突然、デバッグまたはリリースにないEntity Frameworkエラーが表示されます。
そして
「型または名前空間名 '「型または名前空間名 『エンティティは、』名前空間 『System.Data』(あなたはアセンブリ参照が不足している?)には存在しません」 EntityConnectionStringBuilder 'が見つかりませんでした(使用しているディレクティブまたはアセンブリ参照がありません)?
デバッグまたはリリースに切り替えると、これらのエラーは消えて、すべて正常です。
は、ここで問題がで起こっているコードです:任意の助け
using Redacted.Stuff;
using System.Data.Entity.Core.EntityClient;
using System.Reflection;
namespace MoreRedacted.Stuff
{
public class RedactedClass
{
public static string GetConnectionString()
{
var self = Assembly.GetCallingAssembly().GetName().Name;
string constr = string.Empty;
#if (DEBUG)
constr = "connection_dev";
#elif (QA)
constr = "connection_qa";
#else
constr = "connection_prod";
#endif
return new EntityConnectionStringBuilder
{
Provider = "System.Data.SqlClient",
ProviderConnectionString = (new ConfigManager()).ConnectionStrings["RedactedConnection"].ConnectionString,
Metadata = $"res://{ self }/EF.EFRedacted.csdl|res://{ self }/EF.EFRedacted.ssdl|res://{ self }/EF.EFRedacted.msl"
}.ToString();
}
}
}
ありがとう!
以前は見たことがありません。私はVSを閉じ、すべてのbinとobjのディレクトリを手作業でリークし、完全にビルドします。まだそれらのエラーが出ていたら、それをqaに入れて、EF用のナゲットパッケージを取り出して交換し、クリーンでビルドします。 – Will
プロジェクトファイルには、それぞれのEntity Framework型を含むアセンブリを参照する要素に宣言された条件がありますか? –
これが実行されているメソッドで条件がチェックされていますが、直接的な影響はありません。質問を編集してコードを追加します。 – nclayton