タグ付けされた質問 「.net」

.NET Coreに関する質問には使用しないでください。代わりに[.net-core]を使用してください。.NETフレームワークは、主にMicrosoft Windowsオペレーティングシステム用に設計されたソフトウェアフレームワークです。これには、基本クラスライブラリ、共通言語ランタイム(一般にCLRと呼ばれる)、共通型システム(一般にCTSと呼ばれる)、および動的言語ランタイムの実装が含まれます。C#、VB.NET、F#、C ++ / CLIなど、多くのプログラミング言語をサポートしています。


29
列挙型を列挙する方法
StackаэтотвопросестьответынаStack Overflowнарусском:foreach()列挙型列挙型 enumC#でを列挙するにはどうすればよいですか? たとえば、次のコードはコンパイルされません。 public enum Suit { Spades, Hearts, Clubs, Diamonds } public void EnumerateAllSuitsDemoMethod() { foreach (Suit suit in Suit) { DoSomething(suit); } } また、次のコンパイル時エラーが発生します。 「スーツ」は「タイプ」ですが、「変数」のように使用されます Suit2番目のキーワードは失敗します。
3767 c#  .net  loops  enums  enumeration 

11
C#の正しいバージョン番号は何ですか?
C#の正しいバージョン番号は何ですか?何が出たの?C#3.5に関する回答が見つからないのはなぜですか? この質問は主に、不適切なバージョン番号(例:C#3.5)を使用して回答を検索する人を支援するためのものです。間違ったバージョン番号の答えを見つけられなかった人は、この質問を見つけて、正しいバージョン番号で再度検索することが期待されます。

30
ディープクローンオブジェクト
私は次のようなことをしたいです: MyObject myObj = GetMyObj(); // Create and fill a new object MyObject newObj = myObj.Clone(); 次に、元のオブジェクトに反映されていない新しいオブジェクトに変更を加えます。 私はこの機能を必要としないことが多いので、必要に応じて、新しいオブジェクトを作成して各プロパティを個別にコピーすることにしましたが、常に、より優れたまたはよりエレガントな処理方法があると感じています。状況。 オブジェクトを複製またはディープコピーして、元のオブジェクトに変更が反映されることなく、複製されたオブジェクトを変更するにはどうすればよいですか?
2226 c#  .net  clone 

30
エンコーディングを手動で指定せずに、C#で文字列の一貫したバイト表現を取得するにはどうすればよいですか?
どのようにして変換しないstringにbyte[]手動で特定のエンコーディングを指定せずに、.NET(C#)で? 文字列を暗号化します。変換せずに暗号化することはできますが、ここでエンコードが機能する理由を知りたいのですが。 また、エンコードを考慮する必要があるのはなぜですか?文字列が格納されているバイトを簡単に取得できませんか?なぜ文字エンコーディングに依存しているのですか?

28
一度に複数の例外をキャッチしますか?
単に捕まえるのはお勧めしませんSystem.Exception。代わりに、「既知の」例外のみをキャッチする必要があります。 さて、これは時々不必要な反復的なコードにつながる、例えば: try { WebId = new Guid(queryString["web"]); } catch (FormatException) { WebId = Guid.Empty; } catch (OverflowException) { WebId = Guid.Empty; } 私は疑問に思います:両方の例外をキャッチし、WebId = Guid.Empty呼び出しを1回だけ呼び出す方法はありますか? 与えられた例はだけなので、かなり単純GUIDです。しかし、オブジェクトを複数回変更するコードを想像してください。操作の1つが予期した方法で失敗した場合は、を「リセット」する必要がありobjectます。ただし、予期しない例外が発生した場合でも、さらに高く設定したいと思います。




28
NullReferenceExceptionとは何ですか?どのように修正しますか?
この質問の答えはコミュニティの努力です。この投稿を改善するには、既存の回答を編集してください。現在、新しい回答や相互作用を受け入れていません。 StackатотвопросестьответынаStack Overflowнарусском:ЧтотакоеNullReferenceException、икакмнеисправитькод? 私はいくつかのコードを持っていて、それが実行されると、をスローして次のようNullReferenceExceptionに言います: オブジェクト参照がオブジェクトインスタンスに設定されていません。 これはどういう意味ですか?このエラーを修正するにはどうすればよいですか?


19
IDisposableインターフェイスの適切な使用
Microsoftのドキュメントを読むと、IDisposableインターフェイスの「主な」使用はアンマネージリソースのクリーンアップであることがわかります。 私にとって、「アンマネージド」とは、データベース接続、ソケット、ウィンドウハンドルなどのことを意味します。ただし、マネージリソースDispose()を解放するためにメソッドが実装されているコードを見ました。あなたのために。 例えば: public class MyCollection : IDisposable { private List<String> _theList = new List<String>(); private Dictionary<String, Point> _theDict = new Dictionary<String, Point>(); // Die, clear it up! (free unmanaged resources) public void Dispose() { _theList.clear(); _theDict.clear(); _theList = null; _theDict = null; } 私の質問は、これにより、ガベージコレクターが使用するメモリMyCollectionが、通常よりも速く解放されるのでしょうか。 編集:これまでのところ、IDisposableを使用してデータベース接続やビットマップなどのアンマネージリソースをクリーンアップする良い例がいくつか投稿されています。しかし_theList、上記のコードに100万の文字列が含まれていて、ガベージコレクターを待つのではなく、今すぐそのメモリを解放したいとします。上記のコードはそれを達成しますか?

30
「ブレークポイントは現在ヒットしません。このドキュメントにはシンボルがロードされていません。」警告?
Express版のC#デスクトップアプリケーションは機能しましたが、5秒後に機能しませんでした。 私は以下を試しました: デバッグ構成、デバッグフラグ、および完全なデバッグ情報がすべてのアセンブリに設定されていることを確認します。 マシン全体から、プロジェクトに関連するすべてのbinおよびobjフォルダーとすべてのDLLを削除します。 問題の原因となっているプロジェクトを最初から作成し直します。 リブート。 ソリューションには2つのWinFormsプロジェクトがあります。そのうちの1つはデバッグ情報をロードし、1つはロードしません。どちらも、プロジェクトファイルでまったく同じ方法でデバッグ情報を取得しようとしているアセンブリを参照しています。何か案は? ここに追加したいのは、主にこの質問を確認するときに戻ってきたときです。アセンブリが読み込まれるまでシンボルは読み込まれず、アセンブリは必要になるまで読み込まれません。メインアセンブリの1つの関数でのみ使用されるライブラリにブレークポイントがある場合、その関数が呼び出されるまで、シンボルは読み込まれません(ブレークポイントがヒットしていないことが示されます)。

5
コードを高速化してみてください。
try-catchの影響をテストするためにいくつかのコードを書きましたが、驚くべき結果がいくつかありました。 static void Main(string[] args) { Thread.CurrentThread.Priority = ThreadPriority.Highest; Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.RealTime; long start = 0, stop = 0, elapsed = 0; double avg = 0.0; long temp = Fibo(1); for (int i = 1; i < 100000000; i++) { start = Stopwatch.GetTimestamp(); temp = Fibo(100); stop = Stopwatch.GetTimestamp(); elapsed …

20
GetHashCodeをオーバーライドするための最適なアルゴリズムは何ですか?
.NETでは、このGetHashCodeメソッドは.NET基本クラスライブラリ全体の多くの場所で使用されます。適切に実装することは、コレクション内でアイテムをすばやく見つけるか、同等かどうかを判断するときに特に重要です。 GetHashCodeパフォーマンスを低下させないようにカスタムクラスを実装する方法について、標準的なアルゴリズムまたはベストプラクティスはありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.