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

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

11
待機せずにC#で非同期メソッドを安全に呼び出す方法
私が持っているasyncデータを返さないメソッドを: public async Task MyAsyncMethod() { // do some stuff async, don't return any data } データを返す別のメソッドからこれを呼び出しています: public string GetStringData() { MyAsyncMethod(); // this generates a warning and swallows exceptions return "hello world"; } 待機MyAsyncMethod()せずに呼び出すと、Visual Studioで「この呼び出しは待機されないため、現在のメソッドは呼び出しが完了する前に引き続き実行されます」という警告が表示されます。その警告のページには、次のように記載されています。 非同期呼び出しの完了を待たず、呼び出されたメソッドが例外を発生させないことが確実な場合にのみ、警告を抑制することを検討する必要があります。 通話が完了するのを待ちたくないと思います。する必要も時間もありません。しかし、呼び出しがあります例外を発生させます。 私はこの問題に何度か遭遇しましたが、それは共通の解決策が必要な共通の問題であると確信しています。 結果を待たずに非同期メソッドを安全に呼び出すにはどうすればよいですか? 更新: 私が結果を待つことを示唆している人々のために、これは私たちのWebサービス(ASP.NET Web API)上のWebリクエストに応答しているコードです。UIコンテキストで待機すると、UIスレッドは解放されたままになりますが、Web要求の呼び出しで待機すると、要求に応答する前にタスクが完了するのを待機するため、理由もなく応答時間が長くなります。

6
クラスに「public static const string S =” stuff”;を含めることができないのはなぜですか?
クラスをコンパイルしようとすると、エラーが発生します。 定数'NamespaceName.ClassName.CONST_NAME'を静的としてマークすることはできません。 行で: public static const string CONST_NAME = "blah"; 私はいつでもJavaでこれを行うことができました。何が悪いのですか?そして、なぜ私にこれをさせないのですか?
321 c#  const  constants 

6
インデックスによるリストアイテムの取得
私は最近、Javaから移行してc#を使い始めました。インデックスでリストアイテムを取得する方法が見つからないようです。Javaでは、リストの最初の項目を取得するには、次のようになります。 list1.get(0); c#で同等のものは何ですか?
321 c#  list 

7
スタックの目的は何ですか?なぜそれが必要なのですか?
したがって、私は今、C#.NETアプリケーションのデバッグを学ぶためにMSILを学習しています。 私はいつも疑問に思っていました:スタックの目的は何ですか? ちょうど私の質問を文脈で述べるために: なぜメモリからスタックまたは「ロード」への転送があるのですか?一方、スタックからメモリへの転送または「格納」があるのはなぜですか? それらすべてをメモリに配置しないのはなぜですか? それはより速いからですか? RAMベースだからですか? 効率のため? これを把握して、CILコードをより深く理解できるようにしています。
320 c#  .net  vb.net  cil  .net-assembly 


7
結果が空の場合、LINQは何を返しますか
LINQクエリについて質問があります。通常、クエリはIEnumerable<T>タイプを返します。戻り値が空の場合、nullかどうかは不明です。以下ToList()が例外をスローするかList<string>、IEnumerable結果に何も見つからない場合は空になるかどうかはわかりませんか? List<string> list = {"a"}; // is the result null or something else? IEnumerable<string> ilist = from x in list where x == "ABC" select x; // Or directly to a list, exception thrown? List<string> list1 = (from x in list where x == "ABC" select x).ToList(); 非常に単純な質問であることはわかっていますが、当面はVSを利用できません。
319 c#  linq 


11
スレッドからスレッドIDを取得する
たとえば、C#では、スレッドをデバッグするときに、各スレッドのIDを確認できます。 プログラムで同じスレッドを取得する方法が見つかりませんでした。(のプロパティでThread.currentThread)現在のスレッドのIDを取得することもできませんでした。 では、Visual StudioはどのようにスレッドのIDを取得するの2345でしょうか。たとえば、idを使用してスレッドのハンドルを取得する方法はありますか。
319 c#  .net  multithreading 


8
C#でWebClientを使用して特定のURLにデータを投稿する方法
WebClientで「HTTP Post」を使用して、特定のURLにデータを投稿する必要があります。 今、これはWebRequestで実現できることはわかっていますが、いくつかの理由で代わりにWebClientを使用したいと思います。それは可能ですか?もしそうなら、誰かが私にいくつかの例を示すか、私を正しい方向に向けることができますか?
319 c#  post  webclient 

8
テキストファイルを1行ずつ読み取る最も速い方法は何ですか。
テキストファイルを1行ずつ読みたいのですが。.NET C#のスコープ内で可能な限り効率的に実行しているかどうかを知りたいと思いました。 これは私がこれまでに試みていることです: var filestream = new System.IO.FileStream(textFilePath, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite); var file = new System.IO.StreamReader(filestream, System.Text.Encoding.UTF8, true, 128); while ((lineOfText = file.ReadLine()) != null) { //Do something with the lineOfText }

12
SQL Serverレプリケーションプロジェクトで「不正な形式のプログラムを読み込もうとしました」というエラーが表示される
正確なエラーは次のとおりです ファイルまたはアセンブリ 'Microsoft.SqlServer.Replication、Version = 9.0.242.0、Culture = neutral、PublicKeyToken = 89845dcd8080cc91'またはその依存関係の1つを読み込めませんでした。不正な形式のプログラムを読み込もうとしました。 私は最近、2か月間別のプロジェクトに移動した後、このプロジェクトに再び取り組み始めました。以前は完全に機能し、すべての参照を再確認しました。

11
Newtonsoft(または多分LINQ to JSON?)を使用してJSON to .NETオブジェクトをデシリアライズする
Newtonsoftに関するいくつかの投稿があることを知っているので、うまくいけば、これは正確には繰り返されません... KazaaのAPIによって返されたJSONデータをある種の素敵なオブジェクトに変換しようとしています WebClient client = new WebClient(); Stream stream = client.OpenRead("http://api.kazaa.com/api/v1/search.json?q=muse&type=Album"); StreamReader reader = new StreamReader(stream); List<string> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(reader.Read().ToString()); foreach (string item in list) { Console.WriteLine(item); } //Console.WriteLine(reader.ReadLine()); stream.Close(); そのJsonConvertラインは、私が試していた最新のものです...私はそれを完全には理解しておらず、皆さんに尋ねることによっていくつかのフットワークを排除することを望んでいました。私はもともとそれをディクショナリまたは何かに変換しようとしていました...そして実際、私はそこにいくつかの値を取得する必要があるので、ドキュメントで判断すると、おそらくNewtonsoftのLINQ to JSONがより良い選択でしょうか?考え/リンク? JSON戻りデータの例を次に示します。 { "page": 1, "total_pages": 8, "total_entries": 74, "q": "muse", "albums": [ { "name": "Muse", "permalink": "Muse", …

4
非同期操作を同期的に待機し、Wait()がプログラムをここでフリーズする理由
序文:単なる解決策ではなく、説明を求めています。私はすでに解決策を知っています。 タスクベースの非同期パターン(TAP)、非同期、待機に関するMSDNの記事の調査に数日費やしましたが、細かい詳細についてはまだ混乱しています。 私はWindowsストアアプリ用のロガーを書いており、非同期と同期の両方のロギングをサポートしたいと考えています。非同期メソッドはTAPに従い、同期メソッドはこれをすべて隠す必要があり、通常のメソッドのように見え、機能します。 これは、非同期ロギングのコアメソッドです。 private async Task WriteToLogAsync(string text) { StorageFolder folder = ApplicationData.Current.LocalFolder; StorageFile file = await folder.CreateFileAsync("log.log", CreationCollisionOption.OpenIfExists); await FileIO.AppendTextAsync(file, text, Windows.Storage.Streams.UnicodeEncoding.Utf8); } 今、対応する同期メソッド... バージョン1: private void WriteToLog(string text) { Task task = WriteToLogAsync(text); task.Wait(); } これは正しいように見えますが、機能しません。プログラム全体が永久にフリーズします。 バージョン2: うーん..タスクが開始されなかったのでしょうか? private void WriteToLog(string text) { Task task = WriteToLogAsync(text); …

25
「ホーム」という名前のコントローラーに一致する複数のタイプが見つかりました
現在、オンラインでホストされている無関係な2つのMVC3プロジェクトがあります。 1つは正常に動作し、もう1つは動作しないため、エラーが発生します。 「ホーム」という名前のコントローラーと一致する複数のタイプが見つかりました。これは、このリクエストを処理するルート( '{controller} / {action} / {id}')がリクエストに一致するコントローラーを検索するための名前空間を指定していない場合に発生する可能性があります。 その場合は、「namespaces」パラメーターを受け取る「MapRoute」メソッドのオーバーロードを呼び出して、このルートを登録します。 私のホスティング業者の仕事のやり方は、彼が私にFTPアクセスを与え、そのフォルダーに私のアプリケーションごとに1つずつ、他に2つのフォルダーがあります。 ftpFolderA2 / foo.com ftpFolderA2 / bar.com foo.comは正常に機能します。アプリケーションをローカルファイルシステムに公開し、コンテンツをFTPで転送すると機能します。 bar.comをアップロードして実行しようとすると、上記の問題が発生し、自分のサイトを使用できなくなります。foo.comは引き続き機能します。 bar.comはftpFolderA2内のどこからでもコントローラから検索しており、それが別のものを見つけている理由HomeControllerです。コントローラーフォルダーのみを検索するようにするにはどうすればよいですか? 事実: エリアを使用していません。これらは完全に無関係な2つのプロジェクトです。公開した各プロジェクトをそれぞれのフォルダーに配置します。派手なものは何もありません。 各プロジェクトには1つのHomeControllerしかありません。 これが問題であることを誰かが確認できますか?

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