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

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

8
Thread.Sleepがなぜ有害なのか
Thread.Sleep();使用すべきでないと記載されているのをよく目にしますが、なぜそうなのか理解できません。場合はThread.Sleep();、トラブルを引き起こす可能性があり、安全であるのと同じ結果に任意の代替ソリューションがありますか? 例えば。 while(true) { doSomework(); i++; Thread.Sleep(5000); } 別のものは: while (true) { string[] images = Directory.GetFiles(@"C:\Dir", "*.png"); foreach (string image in images) { this.Invoke(() => this.Enabled = true); pictureBox1.Image = new Bitmap(image); Thread.Sleep(1000); } }
128 c#  multithreading  sleep 

13
asp.netコアで現在のユーザーを取得する方法
メールなどのユーザーの情報を取得して、現在のユーザーを取得したい。しかし、asp.netコアではそれができません。私はとても混乱していますこれは私のコードです HttpContextコントローラのコンストラクタではほとんどnull です。各アクションでユーザーを獲得することは良くありません。ユーザーの情報を一度取得してViewData、に設定したい。 public DashboardController() { var user = HttpContext.User.GetUserId(); }

13
ASP.NET CoreでILoggerを使用してユニットテストを行う方法
これは私のコントローラーです: public class BlogController : Controller { private IDAO<Blog> _blogDAO; private readonly ILogger<BlogController> _logger; public BlogController(ILogger<BlogController> logger, IDAO<Blog> blogDAO) { this._blogDAO = blogDAO; this._logger = logger; } public IActionResult Index() { var blogs = this._blogDAO.GetMany(); this._logger.LogInformation("Index page say hello", new object[0]); return View(blogs); } } ご覧のとおり、a IDAOとaの2つの依存関係があります。ILogger これが私のテストクラスです。xUnitを使用してテストし、Moqを使用してモックとスタブを作成します。DAO簡単にモックを作成できますが、ILogger何をすべきかわからないので、nullを渡してコメントをコメントアウトし、コントローラにログインします。テストを実行するとき。テストする方法はありますが、それでもロガーを維持しますか? public class …

30
単体テストを作成するときに何をテストするかをどのようにして知っていますか?[閉まっている]
休業。この質問はもっと集中する必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 この質問を改善する C#を使用Userして、ユーザー名、パスワード、アクティブフラグ、名、姓、フルネームなどを持つクラスが必要です。 ユーザーを認証して保存する方法があるはずです。メソッドのテストを書くだけですか?また、プロパティは.Netのゲッターおよびセッターであるため、プロパティのテストについても心配する必要がありますか?
127 c#  unit-testing  tdd 

11
送信ボタンが押されたMVC
MVCフォームに2つのボタンがあります。 <input name="submit" type="submit" id="submit" value="Save" /> <input name="process" type="submit" id="process" value="Process" /> コントローラーアクションから、どのキーが押されたかを知るにはどうすればよいですか?
127 c#  asp.net  asp.net-mvc  razor 

1
なぜこのF#コードはとても遅いのですか?
C#とF#のLevenshtein実装。C#バージョンは、約1500文字の2つの文字列で10倍高速です。C#:69ミリ秒、F#867ミリ秒。どうして?私が知る限り、彼らはまったく同じことをしますか?それがリリースビルドかデバッグビルドかは関係ありません。 編集:編集距離の実装を特に探している人がここに来ると、壊れます。作業コードはこちらです。 C#: private static int min3(int a, int b, int c) { return Math.Min(Math.Min(a, b), c); } public static int EditDistance(string m, string n) { var d1 = new int[n.Length]; for (int x = 0; x < d1.Length; x++) d1[x] = x; var d0 = new int[n.Length]; for(int i …
127 c#  performance  f#  inline 

15
C#でスレッドプールを使用する場合 [閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前休業。 この質問を改善する 私はC#でマルチスレッドプログラミングを学習しようとしていますが、自分のスレッドを作成するのではなく、スレッドプールを使用するのが最適な場合について混乱しています。1つの本では、小さなタスクのみにスレッドプールを使用することをお勧めします(それが何であれ)。しかし、実際のガイドラインを見つけることができないようです。このプログラミングを決定するときに使用する考慮事項は何ですか?


10
2048x2048の配列乗算と2047x2047の配列乗算でパフォーマンスに大きな影響があるのはなぜですか?
前に「MATLABが行列乗算で非常に高速である理由」で前述したように、いくつかの行列乗算ベンチマークを作成してい ます。 2つの2048x2048行列を乗算すると、C#と他の行列には大きな違いがあります。2047x2047の行列のみを乗算しようとすると、正常に見えます。比較のために他にもいくつか追加しました。 1024x1024-10秒。 1027x1027-10秒。 2047x2047-90秒。 2048x2048-300秒。 2049x2049-91秒。(更新) 2500x2500-166秒 これは、2k x 2kの場合の3.5分差です。 2dim配列の使用 //Array init like this int rozmer = 2048; float[,] matice = new float[rozmer, rozmer]; //Main multiply code for(int j = 0; j < rozmer; j++) { for (int k = 0; k < rozmer; k++) { float …

8
DataGridで選択した行の色を設定する方法
DataGridで選択された行のデフォルトの背景色が暗すぎて読み取れません。とにかくそれを上書きすることはありますか? これを試しました <dg:DataGrid.RowStyle> <Style TargetType="{x:Type dg:DataGridRow}"> <Style.Triggers> <Trigger Property="IsSelected" Value="True" > <Setter Property="Background" Value="Gainsboro" /> </Trigger> </Style.Triggers> </Style> </dg:DataGrid.RowStyle> しかし、まだ何も...
127 c#  wpf  xaml  datagrid 


13
ASP.NET MVC ModelStateエラーをjsonに変換する方法
すべてのModelStateエラーメッセージのリストを取得するにはどうすればよいですか?すべてのキーを取得するこのコードを見つけました:(ModelStateエラーのあるキーのリストを返します) var errorKeys = (from item in ModelState where item.Value.Errors.Any() select item.Key).ToList(); しかし、IListまたはIQueryableとしてエラーメッセージをどのように取得しますか? 私は行くことができました: foreach (var key in errorKeys) { string msg = ModelState[error].Errors[0].ErrorMessage; errorList.Add(msg); } しかし、それは手動で行っています-確かにLINQを使用してそれを行う方法はありますか?.ErrorMessageプロパティがチェーンのはるか下にあるため、LINQの記述方法がわかりません...

4
HashSetは要素が等しいかどうかをどのように比較しますか?
私はクラスがありIComparableます: public class a : IComparable { public int Id { get; set; } public string Name { get; set; } public a(int id) { this.Id = id; } public int CompareTo(object obj) { return this.Id.CompareTo(((a)obj).Id); } } このクラスのオブジェクトのリストをハッシュセットに追加すると、次のようになります。 a a1 = new a(1); a a2 = new a(2); HashSet<a> …
127 c#  hashset 


4
TFSコードレビュー-コメントへの応答として更新されたファイルを表示する
VS 2012およびVS 2013プレビューに組み込まれているコードレビュー機能を使用し始めています。レビューのリクエストとコメントの追加は非常に簡単に思えます。コードの変更をリクエストするコメントを誰かが追加した場合、リクエスターはこれらの変更をどのように行って表示するのですか? したがって、プロセスは次のように流れます。 Person 1はコードレビューを要求します。 Person 2はコメントを追加し、「Needs Work」を選択します。 人1が必要な変更を行います。 個人1は、これらの変更を個人2にどのように表示するのですか?コメントを追加して送信できますが、ファイルは変更されません。元のレビューが要求されたときに作成されたチェンジセットからのファイルであると想定しています。Person 1はこのレビューを閉じて、2回目のレビューをリクエストする必要がありますか? 変更を加えた理由についての会話の履歴が失われるため、2番目のレビューを作成することは最適ではないようです。 コードレビューの基本的な機能の使用方法を示すWebサイトはたくさんありますが、ベストプラクティスを示すサイトはありますか?たとえば、ファイルの横にあるチェックボックスをクリックするのは誰ですか。

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