18

この記事System.Security.dllで説明されているようにファイルを参照しましたが、私のIDEによると、この行は使用されていないため、安全に削除できます。using System.Security.Cryptography;

同じIDEから、とでエラーが発生したことがわかりDataProtectionScopeますProtectedDataそれらはその名前空間にあるはずです。しかし、パッケージを点在させてみると、そこには見えません。

記事は間違っていますか?2つのクラスにアクセスするにはどうすればよいですか?

4

7 に答える 7

77

@CoralDoeが@DaveLucreの下のコメントで述べたように:

「同様の問題があり、これは機能しました。System.Security.Cryptographyを使用しました。特定のフレームワークのSystem.Security.dllを参照するまで、[ProtectedData]とProtectedMemoryを[表示]しませんでした。」

これで問題が解決しました。具体的には、次の手順を実行しました。

  1. VisualStudioでプロジェクトを開きます。
  2. ソリューションエクスプローラーでプロジェクトの名前を右クリックし、[プロパティ]を選択します。
  3. 左側の[参照]タブをクリックします。
  4. [追加]ボタンをクリックします。
  5. [.NET]タブをクリックします。
  6. System.Securityを選択し、[OK]をクリックして参照を追加します。

お役に立てれば。

于 2013-08-16T21:07:17.327 に答える
9

ここでSystem.Security.dllを参照しました:C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Security.dll

追加され 、とusing System.Security.Cryptography;の両方が表示されます。DataProtectionScopeProtectedData

.net 4.0フルフレームワーク(クライアントプロファイルではない)を対象としています。

どのフレームワークをターゲットにしていますか?

于 2012-10-30T22:38:21.043 に答える
2

に加えて、このNuGetパッケージを追加する必要がありましたSystem.Security.Cryptography

https://www.nuget.org/packages/System.Security.Cryptography.ProtectedData/です。

その後、System.Security.Cryptography「中古」になりました。

于 2019-03-05T14:56:28.080 に答える
1

@Dave Lucreが尋ねたように、アプリケーションはどのフレームワークを対象としていますか?Visual Studioは、デフォルトでクライアントプロファイルを使用するすべての新しいアプリケーションを作成します(私の意見ではこれは不吉です)。特に元に戻さないと、あらゆる種類の問題が発生します。それを見て、そこからどこへ行くのか見てみましょう。

于 2012-11-02T14:24:44.877 に答える
0

参照を削除System.Security.Cryptographyして、再度追加します。

私の場合はうまくいきます。

于 2020-10-13T12:07:39.323 に答える
0

申し訳ありませんが、これはかなり古い投稿であることを知っていますが、現在この問題が発生しており、私が見つけた唯一の回避策は次のとおりです。

  1. ジョージブライアンの答えに記載されている手順に従ってください
  2. System.Security.Cryptography.DataProtectionScope scope = System.Security.Cryptography.DataProtectionScope.LocalMachine;の代わりに使用DataProtectionScope scope = DataProtectionScope.LocalMachine;
于 2021-01-15T17:01:35.670 に答える
-10

あなたはおそらくそれを試したことがあるので、これはあなたの顔の平手打ちかもしれません(そしてあなたはまだ試していません、あなたはそれに値するかもしれません)。IDE全体を再インストールするとどうなりますか?そして、私は本当にすべてを意味しました。フレームワーク、VSを削除し、ファイルを削除し、妄想的になってゴミ箱をクリーンアップし、別のインストールディレクトリに切り替えるなど。問題はまだ残っていますか?

なぜそれが起こったのか説明されていないことは知っていますが、この段階では、あなたは問題を解決する方法に主に興味があると思います。

予備のコンピューターにアクセスできる場合は、そのマシンにVSをインストールして、エラーを再現できるかどうかを確認してください。そうでない場合は、プライマリマシンに何か怪しいものがあり、何が起こったのかわからないでしょう。

ここで強調しているのは、これは、正気でも論理的でもないように見えるときに、すべてのプログラマーが信頼すべき一般的な提案のリストにすぎないということです。そして、はい、私はコンピューター嫌いです。私はプログラミングが好きですが、コンピューターは嫌いです。彼らはキーボードを持った小さくて邪悪な人々のようなものです...

于 2012-11-03T00:47:23.810 に答える