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

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


7
Windowsフォーム(c#)でアニメーションGIFを表示する方法
かなり長いプロセスの実行中に進行状況メッセージを表示するフォームがあります。これはWebサービスの呼び出しなので、進行状況バーに完全なパーセンテージを意味のある形で実際に表示することはできません。(プログレスバーのマーキープロパティは特に好きではありません) アニメーションGIFを表示して、プロセスにアクティビティの感触を与えたいと思います(たとえば、Windowsコピープロセスのように、あるコンピューターから別のコンピューターにファイルが飛んでいる)。 これどうやってやるの?

7
xからyへの共変配列の変換によりランタイム例外が発生する可能性があります
私が持っているprivate readonlyのリストLinkLabel(複数可IList<LinkLabel>)。後でLinkLabelこのリストにsを追加し、これらのラベルをFlowLayoutPanel次のように追加します。 foreach(var s in strings) { _list.Add(new LinkLabel{Text=s}); } flPanel.Controls.AddRange(_list.ToArray()); Resharperが私に警告を表示しますCo-variant array conversion from LinkLabel[] to Control[] can cause run-time exception on write operation。 私が理解するのを助けてください: これはどういう意味ですか? これはユーザーコントロールであり、ラベルを設定するために複数のオブジェクトからアクセスされないため、コードをそのままにしても影響はありません。

9
DateTimeから日数を引く
C#プログラムに次のコードがあります。 DateTime dateForButton = DateTime.Now; dateForButton = dateForButton.AddDays(-1); // ERROR: un-representable DateTime 実行するたびに、次のエラーが発生します。 加算または減算された値は、表現できない日時になります。 パラメータ名:値 これまでにこのエラーメッセージを見たことがなく、なぜ表示されているのか理解できません。これまでに読んだ回答から、加算演算で-1を使用して日数を減算できると思いますが、私の質問が示すように、これは私がしようとしていることには当てはまりません。
142 c#  datetime 

11
C#で1つのForEachステートメントを使用して2つのリストまたは配列を反復する
これは一般的な知識のためだけです: 2つある場合、たとえば、Listと同じforeachループで両方を反復処理したい場合は、それを実行できますか? 編集する 明確にするために、私はこれをやりたかった: List<String> listA = new List<string> { "string", "string" }; List<String> listB = new List<string> { "string", "string" }; for(int i = 0; i < listA.Count; i++) listB[i] = listA[i]; しかし、foreach =)
142 c# 



6
HttpClientがタイムアウトしたことを確認するにはどうすればよいですか?
私の知る限り、具体的にはタイムアウトが発生したことを知る方法はありません。私は正しい場所を探していませんか、それとももっと大きなものを見逃していますか? string baseAddress = "http://localhost:8080/"; var client = new HttpClient() { BaseAddress = new Uri(baseAddress), Timeout = TimeSpan.FromMilliseconds(1) }; try { var s = client.GetAsync("").Result; } catch(Exception e) { Console.WriteLine(e.Message); Console.WriteLine(e.InnerException.Message); } これは次を返します: 1つ以上のエラーが発生しました。 タスクがキャンセルされました。

5
.NET Core 2.0でConfigurationManager.AppSettingsを使用できますか?
私はこのように私の設定ファイルから設定を読み取るメソッドを持っています: var value = ConfigurationManager.AppSettings[key]; .NET Standard 2.0のみを対象とする場合、問題なくコンパイルされます。 これで複数のターゲットが必要になるので、プロジェクトファイルを次のように更新しました。 <TargetFrameworks>netcoreapp2.0;net461;netstandard2.0</TargetFrameworks> しかし今、コンパイルnetcoreapp2.0は次のエラーメッセージで失敗します: Error CS0103 The name 'ConfigurationManager' does not exist in the current context (netcoreapp2.0) 別に、新しい.NET Core 2.0コンソールアプリケーション(今回は.NET Core 2.0のみを対象としています)を作成しましたが、同様にConfigurationManager名前空間の下には何もないようSystem.Configurationです。 .NET Standard 2.0で利用できるので混乱しています。.NETCore 2.0は.NET Standard 2.0に準拠しているため、.NET Core 2.0でも利用できると思います。 何が欠けていますか?

1
Moqを使用してメソッド呼び出しを確認する
私はC#での単体テストとMoqの使い方を学ぶのが初めてです。以下は、私がテストしようとしているクラスです。 class MyClass { SomeClass someClass; public MyClass(SomeClass someClass) { this.someClass = someClass; } public void MyMethod(string method) { method = "test" someClass.DoSomething(method); } } class Someclass { public DoSomething(string method) { // do something... } } 以下は私のTestClassです: class MyClassTest { [TestMethod()] public void MyMethodTest() { string action="test"; Mock<SomeClass> mockSomeClass …
142 c#  testing  methods  moq 

3
Core 2.0のConfigurationBuilderでBaseBasePathを設定する方法
Core 2.0のConfigurationBuilderでベースパスを設定するにはどうすればよいですか。 私はググってこの質問、これをMicrosoftのドキュメントから、そして2.0のドキュメントをオンラインで見つけましたが、彼らは1.0.0-beta8Microsoft.Extension.Configurationからのバージョンを使用しているようです。 読みたいですappsettings.json。Core 2.0でこれを行う新しい方法はありますか? using System; using System.IO; using Microsoft.Extensions.Configuration; namespace ConsoleApp2 { class Program { public static IConfigurationRoot Configuration { get; set; } static void Main(string[] args) { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) // <== compile failing here .AddJsonFile("appsettings.json"); Configuration = builder.Build(); Console.WriteLine(Configuration.GetConnectionString("con")); Console.WriteLine("Press a key..."); Console.ReadKey(); …

4
HttpClient PostAsJsonAsyncを使用してASP.NET CoreでHTTP POSTメッセージを送信する
のような動的オブジェクトを送信したい new { x = 1, y = 2 }; HTTP POSTメッセージの本文として。だから私は書こうとします var client = new HttpClient(); 方法が見つかりません client.PostAsJsonAsync() そこで、Microsoft.AspNetCore.Http.Extensionsパッケージをproject.jsonに追加して、 using Microsoft.AspNetCore.Http.Extensions; 句を使用します。しかし、それは私を助けませんでした。 それでは、ASP.NET CoreでJSONボディを含むPOSTリクエストを送信する最も簡単な方法は何ですか?

6
文字列比較でアクセント付き文字を無視する
C#で2つの文字列を比較し、アクセント付きの文字をアクセントなしの文字と同じように扱う必要があります。例えば: string s1 = "hello"; string s2 = "héllo"; s1.Equals(s2, StringComparison.InvariantCultureIgnoreCase); s1.Equals(s2, StringComparison.OrdinalIgnoreCase); これら2つの文字列は同じである必要がありますが(私のアプリケーションに関する限り)、これらのステートメントは両方ともfalseと評価されます。これを行う方法はC#にありますか?
141 c#  string  localization 

6
nuget.exeまたはVisual Studio拡張なしでNugetパッケージをダウンロードする方法
NuGetパッケージをダウンロードするにはどうすればよいですか?NuGet Visual Studio拡張機能やコマンドラインプログラムnuget.exeがありません。どうすればウェブから.nupackファイルをダウンロードできますか?私が理解しているように、.dllそこからファイルを抽出して(7-zipを使用)、通常どおり使用できます。 私が興味を持っているパッケージはhttp://nuget.org/packages/Microsoft.Bcl.Asyncですが、これを一般的に行う方法を知りたいです。 Rubyの世界では、これは簡単です。RubyGemsWebサイトのすべてのパッケージページには、.gemファイルへのダウンロードリンクがあります。例:https ://rubygems.org/gems/pony NuGetのマニフェストの運命に関する議論は別の場所にあります。なぜ私がそれを避けているのかは、この質問には関係ありません。でも私だけじゃない。
141 c#  .net  visual-studio  nuget 

2
エンティティフレームワーク.Remove()と.DeleteObject()
次の2つの方法を使用すると、EFを使用してデータベースからアイテムを削除できます。 EntityCollection.Removeメソッド ObjectContext.DeleteObjectメソッド 1つ目はにEntityCollectionあり、2つ目はにありObjectContextます。 それぞれいつ使用する必要がありますか? 一方が他方よりも好まれますか? Remove()を返し、boolをDeleteObject()返しますvoid。

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