2017-01-31 1 views
-1

他のプロジェクトであるプロジェクトではアクセスが、罰金ではない静的クラスのメンバを参照: のVisual Studio 2012 intellesenseが提案RegexParse4Libを使用しての使用せずに result in object browser launched from references project referenceなぜ次のようにオブジェクトブラウザで参照されるクラスが示されている

RegexParse4Lib.regexParse.RegexReplace(... 

ただし、完了するとRegexReplaceが存在しないとフラグが立てられます。一方

Regex.Replace(... 

はさらに不可解な受け入れられている私はRegexParse4Libを使用して追加することはできませんということです。インテリセンスにもかかわらず、私は、ライブラリを参照しているプロジェクトがクライアントプロファイル(これは.NETのフルバージョンのサブセットである)とライブラリが正規版である場合、これが発生する可能性があり、クラスの初め

+0

おそらく、参照しているプロジェクトがクライアントプロファイルモードで実行されている可能性があります。プロパティを確認してください – CodingYoshi

+0

ありがとう@コーディングヨシ;あなたは間違いなく私が問題を見つけるのを手伝った。 "問題のあるプロジェクト"は.net framework 4を使用していますが、他の人は.net 4.5を使用しています。 .netフレームワーク4.5を使用するように "問題のあるプロジェクト"を変更した後、 "RegexParse4Libを使用"を追加することができました。 RegexParse4Libは.NET Framework 4.5でビルドされているので、.net 4プロジェクトで使用すると問題を引き起こす可能性があります。 – gg89

+0

すごいよ!いずれにしても誰かがこの問題を抱えていると答えた。 – CodingYoshi

答えて

0

にそれを置くことができ(クライアントプロファイルではありません)。

これは、参照しているプロジェクトののターゲットフレームワークが高い場合にも発生します。参照しようとしているライブラリのフレームワークバージョンが低い場合は、.NET Frameworkのバージョンが下位互換性があるため、正常であるはずです。しかし、より高いフレームワークバージョンを持つライブラリを参照しようとすると動作しません:古いフレームワークでは利用できない新しい.net機能を利用するコードがライブラリに存在する可能性があります。

プロジェクトを、ライブラリと同じかそれ以上のフレームワークバージョンに変更します。

関連する問題