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

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

16
ストリームからバイト配列を作成する
入力ストリームからバイト配列を作成するために推奨される方法は何ですか? これが.NET 3.5での現在のソリューションです。 Stream s; byte[] b; using (BinaryReader br = new BinaryReader(s)) { b = br.ReadBytes((int)s.Length); } ストリームのチャンクを読み書きする方が良いでしょうか?
913 c#  .net-3.5  inputstream 

30
列挙型の文字列表現
次の列挙があります。 public enum AuthenticationMethod { FORMS = 1, WINDOWSAUTHENTICATION = 2, SINGLESIGNON = 3 } ただし、問題は、ID 1ではなくAuthenticationMethod.FORMSを要求するときに「FORMS」という単語が必要になることです。 この問題の次の解決策を見つけました(リンク): 最初に、「StringValue」というカスタム属性を作成する必要があります。 public class StringValue : System.Attribute { private readonly string _value; public StringValue(string value) { _value = value; } public string Value { get { return _value; } } } 次に、この属性を列挙子に追加できます。 public …
912 c#  enums 

16
コレクションが変更されました。列挙操作が実行されない可能性があります
デバッガーが接続されていると発生しないように見えるため、このエラーの原因を突き止めることはできません。以下はコードです。 これは、WindowsサービスのWCFサーバーです。NotifySubscribersメソッドは、データイベントが発生するたびにサービスによって呼び出されます(ランダムな間隔ですが、それほど頻繁ではありません-1日に約800回)。 Windowsフォームクライアントがサブスクライブすると、サブスクライバーIDがサブスクライバーディクショナリに追加され、クライアントがサブスクライブを解除すると、ディクショナリーから削除されます。このエラーは、クライアントが登録解除したとき(またはその後)に発生します。次にNotifySubscribers()メソッドが呼び出されたときに、foreach()ループが失敗し、件名のエラーが表示されます。このメソッドは、以下のコードに示すように、エラーをアプリケーションログに書き込みます。デバッガーが接続され、クライアントがサブスクライブを解除すると、コードは正常に実行されます。 このコードに問題がありますか?辞書をスレッドセーフにする必要がありますか? [ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)] public class SubscriptionServer : ISubscriptionServer { private static IDictionary<Guid, Subscriber> subscribers; public SubscriptionServer() { subscribers = new Dictionary<Guid, Subscriber>(); } public void NotifySubscribers(DataRecord sr) { foreach(Subscriber s in subscribers.Values) { try { s.Callback.SignalData(sr); } catch (Exception e) { DCS.WriteToApplicationLog(e.Message, System.Diagnostics.EventLogEntryType.Error); UnsubscribeEvent(s.ClientId); } } } public …

16
「利回り」の適切な使用
StackаэтотвопросестьответынаStack Overflowнарусском:yieldчемпользаyield? 降伏キーワードは、それらの一つであるキーワードを私に神秘を続けてC#で、私はそれを正しく使用していることを私は確信していたことがありません。 次の2つのコードのうち、どちらが推奨され、なぜですか? バージョン1:利回り収益の使用 public static IEnumerable<Product> GetAllProducts() { using (AdventureWorksEntities db = new AdventureWorksEntities()) { var products = from product in db.Product select product; foreach (Product product in products) { yield return product; } } } バージョン2:リストを返す public static IEnumerable<Product> GetAllProducts() { using (AdventureWorksEntities db = new AdventureWorksEntities()) …
903 c#  yield-return 

24
C#で文字列を列挙型に変換する
C#で文字列を列挙値に変換する最良の方法は何ですか? 列挙型の値を含むHTML selectタグがあります。ページが投稿されたら、値(文字列の形式になります)を取得し、それを列挙値に変換します。 理想的な世界では、次のようなことができます。 StatusEnum MyStatus = StatusEnum.Parse("Active"); しかし、それは有効なコードではありません。
894 c#  string  enums 




23
Gmailを介して.NETでメールを送信する
ホストに頼ってメールを送信する代わりに、Gmailアカウントを使用してメールメッセージを送信することを考えていました。メールは、私がショーで演奏するバンドへのパーソナライズされたメールです。 できますか?
876 c#  .net  email  smtp  gmail 

7
Entity Framework 5レコードの更新
私はASP.NET MVC3環境のEntity Framework 5内でレコードを編集/更新するさまざまな方法を調査してきましたが、これまでのところ、必要なすべてのボックスにチェックを付ける方法はありません。その理由を説明します。 私は長所と短所に言及する3つの方法を見つけました。 方法1-元のレコードを読み込み、各プロパティを更新する var original = db.Users.Find(updatedUser.UserId); if (original != null) { original.BusinessEntityId = updatedUser.BusinessEntityId; original.Email = updatedUser.Email; original.EmployeeId = updatedUser.EmployeeId; original.Forename = updatedUser.Forename; original.Surname = updatedUser.Surname; original.Telephone = updatedUser.Telephone; original.Title = updatedUser.Title; original.Fax = updatedUser.Fax; original.ASPNetUserId = updatedUser.ASPNetUserId; db.SaveChanges(); } 長所 変更するプロパティを指定できます ビューはすべてのプロパティを含む必要はありません 短所 データベースを2回クエリしてオリジナルをロードし、更新する 方法2-元のレコードを読み込み、変更された値を設定する …

30
文字列内の文字列(実際にはchar)の出現をどのようにカウントしますか?
/文字列で何個のsを見つけることができるかを知りたいと思ったとき、いくつかの方法がありましたが、最良(または最も簡単)なものを決定できませんでした。 。 現時点では私は次のようなものを使っています: string source = "/once/upon/a/time/"; int count = source.Length - source.Replace("/", "").Length; しかし、私はそれをまったく好きではありません。 私は本当にRegExこれを掘り出したくないのですか? 私の文字列には、検索している用語が含まれることになるので、あなたはそれを想定できます... もちろん、 長さが> 1の文字列の場合、 string haystack = "/once/upon/a/time"; string needle = "/"; int needleCount = ( haystack.Length - haystack.Replace(needle,"").Length ) / needle.Length;
864 c#  string 

16
C#で同期メソッドから非同期メソッドを呼び出す方法は?
私が持っているpublic async void Foo()私は、同期メソッドから呼び出したいというメソッドを。これまでのところ、MSDNドキュメントから見たのは、非同期メソッドを介して非同期メソッドを呼び出すことだけですが、プログラム全体が非同期メソッドで構築されていません。 これは可能ですか? 以下は、非同期メソッドからこれらのメソッドを呼び出す1つの例です。http://msdn.microsoft.com/en-us/library/hh300224(v = vs.110).aspx 今、私はこれらの非同期メソッドを同期メソッドから呼び出すことを検討しています。
863 c#  async-await 

20
リストをランダム化する<T>
C#でジェネリックリストの順序をランダム化する最良の方法は何ですか?宝くじタイプのアプリケーション用にそれらを描画するために、ランダムな順序を割り当てたいリストに75の有限セットがあります。
855 c#  generic-list 


22
IList <string>またはIEnumerable <string>からコンマ区切りのリストを作成する
IList&lt;string&gt;またはから文字列値のコンマ区切りのリストを作成する最もクリーンな方法は何IEnumerable&lt;string&gt;ですか? String.Join(...)などで動作するstring[]ので、IList&lt;string&gt;またはなどの型をIEnumerable&lt;string&gt;文字列配列に簡単に変換できない場合は、扱いにくいことがあります。
851 c#  string 

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