タグ付けされた質問 「c#」

C#(「seesharp」と発音)は、Microsoftによって開発された、静的に型指定された高レベルのマルチパラダイムプログラミング言語です。C#コードは通常、Microsoftの.NETファミリのツールとランタイムを対象としています。これには、.NET Framework、.NET Core、Xamarinなどが含まれます。このタグは、C#またはC#の正式な仕様で記述されたコードに関する質問に使用します。

8
タスクとスレッドの違いは何ですか?
C#4.0ではTask、System.Threading.Tasks名前空間にあります。間の真の違いは何であるThreadとはTask。私は自分で学ぶためにいくつかのサンプルプログラム(MSDNから取ったヘルプ)をしました Parallel.Invoke Parallel.For Parallel.ForEach しかし、アイデアがあまり明確ではないため、多くの疑問があります。 Stackoverflowで同様の種類の質問を最初に検索しましたが、この質問のタイトルでは同じ結果を得ることができなかった可能性があります。同じ種類の質問が以前にここに投稿されていることを誰かが知っている場合は、リンクのリファレンスを提供してください。

30
C#または.NETの最悪の問題は何ですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 5年前休業。 私は最近DateTimeオブジェクトを操作していて、次のようなものを書きました: DateTime dt = DateTime.Now; dt.AddDays(1); return dt; // still today's date! WTF? のintellisenseのドキュメントでAddDays()は、日付に1日を追加しますが、実際には追加しません。実際には、日付を追加した日付を返すため、次のように記述する必要があります。 DateTime dt = DateTime.Now; dt = dt.AddDays(1); return dt; // tomorrow's date これは以前に何度も私をかみましたので、最悪のC#の落とし穴をカタログ化すると便利だと思いました。
377 c#  .net 

8
C#でグローバルミューテックスを使用するための良いパターンは何ですか?
Mutexクラスは非常に誤解されており、グローバルmutexはさらに誤解されています。 グローバルmutexを作成するときに使用する、安全で適切なパターンは何ですか? うまくいくもの 私のマシンが置かれているロケールに関係なく ミューテックスを適切に解放することが保証されています ミューテックスが取得されない場合、オプションで永久にハングアップしない 他のプロセスがミューテックスを放棄するケースを扱います
377 c#  concurrency  mutex 


18
IEnumerable <T>として単一の項目を渡す
パラメータTを必要とするメソッドにタイプの単一の項目を渡す一般的な方法はあり IEnumerable&lt;T&gt;ますか?言語はC#、フレームワークバージョン2.0です。 現在、ヘルパーメソッドを使用しています(それは.Net 2.0なので、LINQに似たキャスト/投影ヘルパーメソッドがたくさんあります)が、これはばかげているように見えます。 public static class IEnumerableExt { // usage: IEnumerableExt.FromSingleItem(someObject); public static IEnumerable&lt;T&gt; FromSingleItem&lt;T&gt;(T item) { yield return item; } } もちろん、List&lt;T&gt;またはを作成してデータを入力し、のArray代わりに渡す方法もありIEnumerable&lt;T&gt;ます。 [編集]拡張メソッドとして、次のような名前が付けられます: public static class IEnumerableExt { // usage: someObject.SingleItemAsEnumerable(); public static IEnumerable&lt;T&gt; SingleItemAsEnumerable&lt;T&gt;(this T item) { yield return item; } } ここで何か不足していますか? [編集2]someObject.Yield()(以下のコメントで@Peterが示唆しているように)この拡張メソッドの主な名前は簡潔にするために最適な名前であることがわかりました。 public static class …
377 c#  .net  generics  ienumerable 

29
LINQを使用してリストをサブリストに分割する
各分割の区切り文字としてアイテムインデックスを使用して、をのList&lt;SomeObject&gt;いくつかの個別のリストに分割する方法はありますSomeObjectか? 例を挙げましょう。 私は持っています List&lt;SomeObject&gt;私が必要List&lt;List&lt;SomeObject&gt;&gt;またはList&lt;SomeObject&gt;[]これらの得られたリストのそれぞれは、元のリスト(順次)の3つの項目の基を含有するように、。 例えば。: 元のリスト: [a, g, e, w, p, s, q, f, x, y, i, m, c] 結果のリスト: [a, g, e], [w, p, s], [q, f, x], [y, i, m], [c] また、結果のリストのサイズをこの関数のパラメーターにする必要があります。
377 c#  linq  data-structures 

7
エンティティフレームワーク-複数レベルのプロパティを含める
Include()メソッドは、オブジェクトのリストに対して非常にうまく機能します。しかし、もし私が2つのレベルを深く掘り下げる必要がある場合はどうなりますか?たとえば、以下のメソッドは、ここに示されているプロパティを含むApplicationServerを返します。ただし、ApplicationsWithOverrideGroupは、他の複雑なオブジェクトを保持する別のコンテナーです。そのプロパティでInclude()も実行できますか?または、そのプロパティを完全にロードするにはどうすればよいですか? 今のところ、このメソッドは: public IEnumerable&lt;ApplicationServer&gt; GetAll() { return this.Database.ApplicationServers .Include(x =&gt; x.ApplicationsWithOverrideGroup) .Include(x =&gt; x.ApplicationWithGroupToForceInstallList) .Include(x =&gt; x.CustomVariableGroups) .ToList(); } Enabledプロパティ(下記)のみを入力し、ApplicationまたはCustomVariableGroupプロパティ(以下)は入力しません。これを実現するにはどうすればよいですか? public class ApplicationWithOverrideVariableGroup : EntityBase { public bool Enabled { get; set; } public Application Application { get; set; } public CustomVariableGroup CustomVariableGroup { get; set; } }

30
優れた.NETプロファイラーとは何ですか?
ロックされています。質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答や相互作用を受け入れていません。 .netプログラムを使用するときにどのプロファイラーを使用しましたか。特にどのプロファイラーをお勧めしますか?
374 c#  .net  profiling  profiler 


22
「コントロールにコードブロックが含まれているため、コントロールコレクションを変更できません」
スライダーであるシンプルなユーザーコントロールを作成しようとしています。AjaxToolkit SliderExtenderをユーザーコントロールに追加すると、次のようになります(*&$#()@#エラー: Server Error in '/' Application. The Controls collection cannot be modified because the control contains code blocks (i.e. `&lt;% ... %&gt;`). Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it …


18
イベントからすべてのイベントハンドラーを削除する方法
コントロールに新しいイベントハンドラーを作成するには、次のようにします。 c.Click += new EventHandler(mainFormButton_Click); またはこれ c.Click += mainFormButton_Click; イベントハンドラを削除するには、これを行うことができます c.Click -= mainFormButton_Click; しかし、イベントからすべてのイベントハンドラーをどのように削除しますか?
367 c#  .net  winforms  events 


14
C#でのswitchステートメントのフォールスルー?
スイッチステートメントのフォールスルーは、構成を愛することとswitch対比することの私の個人的な主な理由の1つですif/else if。ここに例を示します。 static string NumberToWords(int number) { string[] numbers = new string[] { "", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }; string[] tens = new string[] { "", "", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety" }; string[] teens = new string[] { "ten", "eleven", "twelve", …

26
C#アプリケーションが実行されているサーバーのIPアドレスを取得するにはどうすればよいですか?
サーバーを実行していて、自分のIPアドレスを表示したい。 コンピューターの(可能であれば)外部のIPアドレスを取得するための構文は何ですか? 誰かが次のコードを書いた。 IPHostEntry host; string localIP = "?"; host = Dns.GetHostEntry(Dns.GetHostName()); foreach (IPAddress ip in host.AddressList) { if (ip.AddressFamily.ToString() == "InterNetwork") { localIP = ip.ToString(); } } return localIP; しかし、私は一般的に著者を信用せず、このコードを理解していません。そうするためのより良い方法はありますか?
365 c#  ip-address 

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