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

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

8
列挙型と一致するプロパティのC#命名規則
私は自分のステータスプロパティを列挙型として保持するクラスを実装していることがよくあります。Status列挙型とStatus型のONE Statusプロパティがあります。この名前の競合を解決するにはどうすればよいですか? public class Car { public enum Status { Off, Starting, Moving }; Status status = Status.Off; public Status Status // <===== Won't compile ===== { get { return status; } set { status = value; DoSomething(); } } } Status列挙型がさまざまなタイプに共通である場合、それをクラスの外に置いて問題を解決します。ただし、ステータスは車にのみ適用されるため、クラス外で列挙型を宣言することは意味がありません。 この場合、どの命名規則を使用しますか? 注意:この質問は、この質問の回答のコメントで部分的に議論されました。それがなかったので、メインの問題、それは多くの可視性を取得できませんでした。 編集:Filip Ekbergは、「ステータス」の特定のケースに対してIMOの優れた回避策を提案しています。それでも、Michael Preweckiの回答のように、列挙型/プロパティの名前が異なるソリューションについて読むのは興味深いでしょう。 EDIT2(2010年5月):私のお気に入りの解決策は、Chris Sの提案に従って列挙型の名前を複数形にすることです。MSのガイドラインによると、これはフラグ列挙型にのみ使用する必要があります。しかし、私はそれをますます好きになりました。現在は通常の列挙型にも使用しています。

13
ウィンドウを常に.Netのトップに保つ方法は?
別のプログラムでマクロを実行するC#winformsアプリがあります。他のプログラムは継続的にポップアップウィンドウを表示し、一般的に物事をより良い言葉の欠如のために狂ったように見せます。プロセスの実行を停止するキャンセルボタンを実装したいのですが、ウィンドウが一番上に表示されないようです。C#でこれを行うにはどうすればよいですか? 編集:私はTopMost = trueを試しました。、しかし他のプログラムはそれ自身のウィンドウを上にポップアップし続けます。nミリ秒ごとにウィンドウを最上部に送信する方法はありますか? 編集:これを解決する方法は、システムトレイアイコンを追加することでした。このアイコンをダブルクリックすると、プロセスがキャンセルされます。システムトレイアイコンが隠れることはありません。ご回答くださった皆様、ありがとうございました。「スーパーオントップ」ウィンドウがない理由についての記事を読みました...論理的に機能しません。
93 c#  .net  winforms 

5
「オン」の場合にのみ実行される「デバッグのみ」のコード
デバッグ担当者が要求した場合にのみ実行されるC#の「デバッグ専用」コードを追加したいと思います。C ++では、以前は次のようなことをしていました。 void foo() { // ... #ifdef DEBUG static bool s_bDoDebugOnlyCode = false; if (s_bDoDebugOnlyCode) { // Debug only code here gets executed when the person debugging // manually sets the bool above to true. It then stays for the rest // of the session until they set it …

11
「ClickOnceはリクエスト実行レベル「requireAdministrator」をサポートしていません。」
したがって、私はレジストリへのアクセスを必要とするアプリケーションを書いていました。説明や名前など、他のタッチを追加する前に、ビルド設定には触れず、動作させる必要がありました。 突然、私は消えないエラーを受け取ります。ClickOnce does not support the request execution level 'requireAdministrator'.さて、このアプリケーションではClickOnceには触れていません。私が行ったのは、これらのアクセス許可を要求するマニフェストファイルを含めることだけでした。 私の今の問題は、このエラーがなくなることはなく、プログラムをコンパイルできないことです。何をすべきかについてのアドバイスはありますか?(注意:もうすぐ寝るので、明日の午後チェックします)。

10
イベントハンドラーの実行順序
次のように複数のイベントハンドラーを設定した場合: _webservice.RetrieveDataCompleted += ProcessData1; _webservice.RetrieveDataCompleted += ProcessData2; イベントRetrieveDataCompletedが発生したときにハンドラーはどの順序で実行されますか?それらは同じスレッドで実行され、登録された順序で順番に実行されますか?

7
HttpStatusCodeが成功または失敗を表すかどうかの確認
次の変数があるとします。 System.Net.HttpStatusCode status = System.Net.HttpStatusCode.OK; これが成功ステータスコードか失敗コードかを確認するにはどうすればよいですか? たとえば、次のことができます。 int code = (int)status; if(code >= 200 && code < 300) { //Success } また、ある種のホワイトリストを作成することもできます。 HttpStatusCode[] successStatus = new HttpStatusCode[] { HttpStatusCode.OK, HttpStatusCode.Created, HttpStatusCode.Accepted, HttpStatusCode.NonAuthoritativeInformation, HttpStatusCode.NoContent, HttpStatusCode.ResetContent, HttpStatusCode.PartialContent }; if(successStatus.Contains(status)) //LINQ { //Success } これらの選択肢のどれも私を納得させず、私はこの仕事を私のために行うことができる.NETクラスまたはメソッドを望んでいました: bool isSuccess = HttpUtilities.IsSuccess(status);
93 c#  .net  system.net 

10
UserControlをVisual Studioツールボックスに配置する方法
プロジェクトでユーザーコントロールを作成し、プロジェクトをビルドした後、それをツールボックスに入れて、コモンコントロールとして使用する必要があります。でもできません。これUserControlは私のプロジェクト名前空間にありChoose Item、右クリックメニューを試しましたが、追加する方法が見つかりませんでした。

6
ジェネリック型が文字列かどうかをテストする最良の方法は?(C#)
プリミティブなどの任意のタイプを許可するジェネリッククラスがあります。これに関する唯一の問題は、の使用default(T)です。値型または文字列に対してdefaultを呼び出すと、それはそれを適切な値(空の文字列など)に初期化します。default(T)オブジェクトを呼び出すと、nullが返されます。さまざまな理由により、プリミティブ型でない場合は、null ではなく、その型のデフォルトのインスタンスが存在することを確認する必要があります。これが試行1です。 T createDefault() { if(typeof(T).IsValueType) { return default(T); } else { return Activator.CreateInstance<T>(); } } 問題-文字列は値の型ではありませんが、パラメーターのないコンストラクターがありません。したがって、現在の解決策は次のとおりです。 T createDefault() { if(typeof(T).IsValueType || typeof(T).FullName == "System.String") { return default(T); } else { return Activator.CreateInstance<T>(); } } しかし、これはクラッジのように感じます。文字列のケースを処理するより良い方法はありますか?
93 c#  generics 

12
.NET WPFセッション間でウィンドウサイズを記憶する
基本的に、ユーザーがアプリケーションのウィンドウのサイズを変更した場合、アプリケーションを再度開いたときにアプリケーションを同じサイズにしたいと思います。 最初は、SizeChangedイベントを処理してHeightとWidthを保存しようと思っていましたが、もっと簡単な解決策があるはずだと思います。 かなり単純な問題ですが、簡単な解決策が見つかりません。
93 c#  .net  wpf  windows 

3
EPPlusを使用してセルを結合しますか?
EPPlusライブラリを使用してExcelファイルの読み取り/書き込みを行っています。http://epplus.codeplex.com/ 私はドキュメントを書くときにいくつかのセルを単にマージしようとしています: using (ExcelPackage pck = new ExcelPackage()) { //Create the worksheet ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Demo"); //Format the header for column 1-3 using (ExcelRange rng = ws.Cells["A1:C1"]) { bool merge = rng.Merge; } } 単にtrueまたはfalseを返すMergeという名前のプロパティがあります。たぶんそれはセルをマージするだろうと思ったが、そうではない。 誰でもこれを行う方法を知っていますか?
93 c#  asp.net  excel  epplus 

7
Visual Studioで「[一部のイベント]未使用」のコンパイラ警告を取り除くにはどうすればよいですか?
たとえば、私はこのコンパイラ警告を受け取ります、 イベント「Company.SomeControl.SearchClick」は使用されません。 しかし、コメントアウトすると、このイベントを使用しようとしているXAMLページの20の新しい警告のようにスローされるので、それが使用されていることはわかっています。 何ができますか?この警告を取り除くトリックはありますか?

3
HTTPClient応答からのGZipストリームの解凍
WCFサービス(WCFサービスからWCFサービス)からGZipエンコードされたJSONを返すAPIに接続しようとしています。私が使用していますHTTPClientの APIに接続するために、文字列としてJSONオブジェクトを返すことができました。ただし、この返されたデータをデータベースに格納できるようにする必要があるので、JSONオブジェクトを返して配列またはバイトまたはそれらの行に沿った何かに格納するのが最善の方法であると考えました。 特に私が問題を抱えているのは、GZipエンコーディングの解凍であり、多くの異なる例を試みてきましたが、まだそれを取得できません。 以下のコードは、接続を確立して応答を取得する方法です。これは、APIから文字列を返すコードです。 public string getData(string foo) { string url = ""; HttpClient client = new HttpClient(); HttpResponseMessage response; string responseJsonContent; try { client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); response = client.GetAsync(url + foo).Result; responseJsonContent = response.Content.ReadAsStringAsync().Result; return responseJsonContent; } catch (Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message); return ""; } } 私はこれらのStackExchange API、MSDN、およびstackoverflowのカップルなどのいくつかの異なる例に従っていますが、これらのいずれかを機能させることができませんでした。 これを達成する最良の方法は何ですか、私は正しい軌道に乗っていますか? みんなありがとう。
93 c#  json  wcf  gzip 

3
Json.Netのプライベートセッター
プライベートセッターを処理する属性があることは知っていますが、この動作をデフォルトとして設定したいのですが、これを実現する方法はありますか?ソースの微調整を除きます。これのための設定があったら素晴らしいでしょう。
93 c#  json.net 

5
C#プロパティ:プライベートフィールドなしでカスタムセットプロパティを使用する方法
私はこれをしたいです: public Name { get; set { dosomething(); ??? = value } } 自動生成されたプライベートフィールドを使用することはできますか? それとも、この方法で実装する必要がありますか? private string name; public string Name { get { return name; } set { dosomething(); name = value } }
93 c#  properties 

13
空きディスク容量を取得する
以下の各入力を考慮して、その場所に空き領域を確保したいと思います。何かのようなもの long GetFreeSpace(string path) 入力: c: c:\ c:\temp \\server \\server\C\storage
93 c#  diskspace 

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