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

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

10
List <T>からn番目ごとのアイテムを取得するにはどうすればよいですか?
.NET 3.5を使用してnおり、リストから* *番目のアイテムをすべて取得できるようにしたいと考えています。ラムダ式とLINQのどちらを使用してそれが実現されるかについては気になりません。 編集する この質問はかなりの議論を引き起こしたようです(これは良いことですよね?)。私が学んだ主なことは、あなたが何かをするためのあらゆる方法を知っていると思ったら(これほど簡単ですが)、もう一度考え直してください!
114 c#  linq  list  lambda 

8
C#でXmlNodeから属性値を読み取る方法は?
XmlNodeがあり、 "Name"という名前の属性の値を取得したいとします。どうやってやるの? XmlTextReader reader = new XmlTextReader(path); XmlDocument doc = new XmlDocument(); XmlNode node = doc.ReadNode(reader); foreach (XmlNode chldNode in node.ChildNodes) { **//Read the attribute Name** if (chldNode.Name == Employee) { if (chldNode.HasChildNodes) { foreach (XmlNode item in node.ChildNodes) { } } } } XMLドキュメント: &lt;Root&gt; &lt;Employee Name ="TestName"&gt; &lt;Childs/&gt; …
114 c#  .net  xml 

6
.NET Process.Start default directory?
C#.NETの内部からJavaアプリケーションを起動しますコンソールアプリケーションの起動しています。これは、Javaアプリケーションが「デフォルト」ディレクトリが何であるかを気にしない場合は問題なく動作しますが、現在のディレクトリでサポートファイルのみを検索するJavaアプリケーションでは失敗します。 プロセスが開始されるデフォルトのディレクトリを指定するために設定できるプロセスパラメータはありますか?
114 c# 

4
ASP.NET Web APIでasync / awaitを効果的に使用する
async/await私のWeb APIプロジェクトでASP.NET の機能を利用しようとしています。それが私のWeb APIサービスのパフォーマンスに影響を与えるかどうかは、私にはよくわかりません。アプリケーションのワークフローとサンプルコードを以下に示します。 ワークフロー: UIアプリケーション→Web APIエンドポイント(コントローラー)→Web APIサービスレイヤーのメソッドの呼び出し→別の外部Webサービスを呼び出します。(ここに、DBインタラクションなどがあります。) コントローラ: public async Task&lt;IHttpActionResult&gt; GetCountries() { var allCountrys = await CountryDataService.ReturnAllCountries(); if (allCountrys.Success) { return Ok(allCountrys.Domain); } return InternalServerError(); } サービス層: public Task&lt;BackOfficeResponse&lt;List&lt;Country&gt;&gt;&gt; ReturnAllCountries() { var response = _service.Process&lt;List&lt;Country&gt;&gt;(BackOfficeEndpoint.CountryEndpoint, "returnCountries"); return Task.FromResult(response); } 上記のコードをテストし、動作しています。しかし、それがの正しい使い方かどうかはわかりませんasync/await。あなたの考えを共有してください。

3
フレンドアセンブリを宣言する方法は?
私のソリューションには2つのプロジェクトがあります。 アセンブリ(基本ライブラリ) テストアセンブリ(NUnit) 最初のプロジェクトで、テストアセンブリをフレンドアセンブリとして宣言しました。 [assembly: InternalsVisibleTo ("Company.Product.Tests")] アセンブリに署名するためのソリューションをセットアップするのを忘れていることに気づくまで、すべてがうまくいきました。そこで、snkファイルを作成し、最初のアセンブリ(基本ライブラリ)に署名するようにVisual Studioプロジェクトを設定しました。最初のプロジェクトをコンパイルすると、次のエラーが発生します。 フレンドアセンブリ参照 'Company.Product.Tests'は無効です。厳密な名前の署名されたアセンブリは、InternalsVisibleTo宣言で公開キーを指定する必要があります。 snユーティリティを使用してsnkファイルから公開鍵を抽出しようとしましたが、使用方法がわからない有線バイナリファイルが生成されます。どうすれば問題を解決できますか?

4
「フル」または「pdbのみ」のデバッグ情報を使用してリリースビルドをコンパイルする必要がありますか?
Visual Studio 2010 for C#プロジェクトで、[プロジェクトのプロパティ]&gt; [ビルド]&gt; [詳細]&gt; [デバッグ情報]の順に移動すると、なし、完全、またはpdbのみの3つのオプションがあります。この質問への回答に基づいて、フルとpdbのみの違いのいくつかを理解していると思います。しかし、どちらがリリースビルドに適していますか?「完全」を使用すると、パフォーマンスに影響がありますか?「pdb-only」を使用すると、本番環境の問題のデバッグが難しくなりますか? 「フル」と「pdbonly」の違いは何ですか?https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/debug-compiler-option

9
すべての文字を最後のダッシュの右側に配置します
私は以下を持っています: string test = "9586-202-10072" ファイナルの右側にあるすべての文字を-10072にするにはどうすればいいですか。10072です。文字数は常に最後のダッシュの右側とは異なります。 これはどのように行うことができますか?
114 c# 

4
ファイルサイズ基準を満たすためにファイルに挿入する特定の長さの文字列を生成する方法は?
ファイルサイズに関していくつかのロードの問題をテストする必要があります。ファイルを自動的に生成するC#で記述されたWindowsアプリケーションがあります。各ファイルのサイズを知っています。100KB、および生成するファイルの数。私が必要としているのは、必要なファイルサイズ以下の文字列を生成する方法です。 疑似コード: long fileSizeInKB = (1024 * 100); //100KB int numberOfFiles = 5; for(var i = 0; i &lt; numberOfFiles - 1; i++) { var dataSize = fileSizeInKB; var buffer = new byte[dataSize]; using (var fs = new FileStream(File, FileMode.Create, FileAccess.Write)) { } }
114 c#  string  .net  operations 

4
イベントハンドラーのラムダ式の使用
現在、次のように宣言されているページがあります。 public partial class MyPage : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //snip MyButton.Click += (o, i) =&gt; { //snip } } } 最近、1.1から.NET 3.5に移行したばかりなので、Page_Loadの外部でイベントハンドラーを作成することに慣れています。私の質問です。これにラムダメソッドを使用するときに注意する必要のあるパフォーマンスの欠点や落とし穴はありますか?確かに簡潔なので、私はそれを好みますが、使用するためにパフォーマンスを犠牲にしたくありません。ありがとう。
114 c#  performance  events  lambda 

4
Entity FrameworkのICollection <T>とList <T>
最初にいくつかのEntity Frameworkアプリケーションの設計に取り掛かる前に、私はいくつかのWebキャストだけを見ました。あまりドキュメントを読んでいなかったので、今は苦しんでいるような気がします。 私はList&lt;T&gt;自分のクラスで使用していますが、うまくいきました。 今、私はいくつかのドキュメントを読みました、そしてそれは私が使うべきだったと述べていICollection&lt;T&gt;ます。私はこれに変更しましたが、モデルコンテキストが変更されることすらありませんでした。両方のためですList&lt;T&gt;とICollection&lt;T&gt;継承IEnumerable&lt;T&gt;、それが実際にEFのために必要なものでしょうか? ただし、これが当てはまる場合、EFのドキュメントIEnumerable&lt;T&gt;に、代わりにEFのドキュメントに必要と記載されていないのはなぜICollection&lt;T&gt;ですか? いずれにせよ、私が行ったことにマイナス面はありますか、それとも変更すべきですか?


4
HttpClient使用時のリクエスト/レスポンスメッセージのロギング
以下のようなPOSTを行うメソッドがあります var response = await client.PostAsJsonAsync(url, entity); if (response.IsSuccessStatusCode) { // read the response as strongly typed object return await response.Content.ReadAsAsync&lt;T&gt;(); } 私の質問は、エンティティオブジェクトから投稿された実際のJSONを取得する方法です。POSTEDを取得したJSONをログに記録したいので、jsonを自分でシリアル化しなくてもそれを取得できると便利です。

6
List <T>要素に特定のプロパティ値を持つアイテムが含まれているかどうかを確認する方法
public class PricePublicModel { public PricePublicModel() { } public int PriceGroupID { get; set; } public double Size { get; set; } public double Size2 { get; set; } public int[] PrintType { get; set; } public double[] Price { get; set; } } List&lt;PricePublicModel&gt; pricePublicList = new List&lt;PricePublicModel&gt;(); の要素を確認する方法 …
113 c#  list  contains 

12
パラメータが文字列でない場合、SQLクエリをパラメータ化しないことは安全ですか?
SQLインジェクションに関しては、stringパラメーターをパラメーター化する必要性を完全に理解しています。それは本の中で最も古いトリックの1つです。しかし、いつパラメーター化しないことが正当化できるのSqlCommandでしょうか?パラメータ化しないで「安全」と見なされるデータ型はありますか? たとえば、私はSQLの専門家の近くにいるとは考えていませんが、SQLインジェクションに対して脆弱で、a boolまたはan を受け入れ、それをintクエリに直接連結する可能性があるとは考えられません。 私の仮定は正しいですか、それとも私のプログラムに大きなセキュリティの脆弱性を残す可能性がありますか? 明確にするために、この質問にはタグが付けられています c#これは強く型付けされた言語です。私が言うとき、「パラメータを、」のようなものだと思います public int Query(int id)。

5
変更されたbase64 URLをデコード/エンコードするためのコード
データをbase64でエンコードしてURLに配置し、HttpHandler内でデコードしたいと考えています。 Base64エンコードでは、UriTemplateの一致を台無しにする「/」文字が許可されることがわかりました。次に、Wikipediaから「URLのBase64を変更する」という概念があることがわかりました。 URLバリアントの変更されたBase64が存在し、パディング「=」は使用されず、標準のBase64の「+」および「/」文字はそれぞれ「-」および「_」に置き換えられるため、URLエンコーダー/デコーダーを使用するは不要になり、エンコードされた値の長さに影響を与えません。同じエンコードされたフォームをそのままリレーショナルデータベース、Webフォーム、およびオブジェクト識別子で使用するために残します。 .NETを使用して、現在のコードを基本的なbase64エンコードおよびデコードから「変更されたbase64 for base64」メソッドを使用するように変更したいと思います。誰かこれをやったことがありますか? デコードするには、次のようなものから始めます。 string base64EncodedText = base64UrlEncodedText.Replace('-', '+').Replace('_', '/'); // Append '=' char(s) if necessary - how best to do this? // My normal base64 decoding now uses encodedText しかし、私は潜在的に1つまたは2つの「=」文字を最後に追加する必要がありますが、これは少し複雑に見えます。 私のエンコーディングロジックはもう少し単純なはずです。 // Perform normal base64 encoding byte[] encodedBytes = Encoding.UTF8.GetBytes(unencodedText); string base64EncodedText = Convert.ToBase64String(encodedBytes); // Apply …
113 c#  url  base64  encode  decode 

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