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

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


9
このシステムでは実行中のスクリプトが無効になっているため、ps1をロードできません
私powershellはc#からスクリプトを実行しようとしています。 最初にをに設定ExecutionPolicyするUnrestrictedと、スクリプトはから実行されPowerShell ISEます。 今これはc#私のコードです: class Program { private static PowerShell ps; static void Main(string[] args) { ps = PowerShell.Create(); string ps1File = Path.Combine(Environment.CurrentDirectory, "script.ps1"); ExecuteScript(ps1File); Console.ReadLine(); } static void ExecuteScript(string script) { try { ps.AddScript(script); Collection<PSObject> results = ps.Invoke(); Console.WriteLine("Output:"); foreach (var psObject in results) { Console.WriteLine(psObject); } Console.WriteLine("Non-terminating errors:"); …
120 c#  powershell 

30
C ++パフォーマンスとJava / C#
ロックされています。質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答や相互作用を受け入れていません。 私の理解では、C / C ++は特定のマシンアーキテクチャで実行するネイティブコードを生成します。逆に、JavaやC#などの言語は、ネイティブアーキテクチャを抽象化する仮想マシン上で実行されます。この中間ステップのため、JavaまたはC#がC ++の速度に一致することは論理的に不可能であるように見えますが、最新のコンパイラー(「ホットスポット」)はこの速度に達するか、それを超えることさえあると言われています。 おそらく、これは言語の問題よりもコンパイラの問題のほうが多いですが、これらの仮想マシン言語の1つがネイティブ言語よりも優れたパフォーマンスを発揮する方法を誰でも簡単に英語で説明できますか?
119 c#  java  c++  performance  bytecode 


4
WPFでメニューバーを作成しますか?
WPFアプリケーションのWindowsフォームと同じメニューバーを作成したいのですが。 どうすればいいですか? WPFコントロールツールボックスのメニューオプションでは、空白のバーしか表示されません。
119 c#  wpf  xaml 

6
'IList'対 'ICollection'対 'Collection'を返す
パブリックAPIのメソッドとプロパティからどのコレクション型を返すべきか混乱しています。 私が念頭に置いているコレクションはIList、ICollectionとCollectionです。 これらのタイプの1つを返すことは常に他のタイプよりも優先されますか、それとも特定の状況に依存しますか?
119 c#  .net  generics  collections 

11
インストール時にWindowsサービスを自動的に開始する
InstallUtil.exeを使用してインストールするWindowsサービスがあります。[起動方法]を[自動]に設定しても、インストール時にサービスが開始されないため、サービスを手動で開いて[開始]をクリックする必要があります。コマンドラインから、またはサービスのコードから起動する方法はありますか?

5
分数の損失の可能性
これがナイーブな質問なら許してください。しかし、今日は途方に暮れています。 私は次のような単純な除算を持っています: double returnValue = (myObject.Value / 10); 値はオブジェクトのintです。 分数損失の可能性があるというメッセージが表示されます。しかし、doubleをintに変更すると、メッセージは消えます。 これがなぜ起こるかについての考えはありますか?
119 c#  math 

6
コードでWPFラベルにテキストを追加する方法
ばかげているように感じますが、コードでテキストをWPFラベルコントロールに追加する方法がわかりません。TextBlockについて次のように: DesrTextBlock.Text = "some text"; それを行うためのLabelの同等のプロパティは何ですか? DesrLabel.??? = "some text"; //something like this
119 c#  wpf 

3
この文字列拡張メソッドが例外をスローしないのはなぜですか?
IEnumerable<int>文字列内の部分文字列のすべてのインデックスを返すC#文字列拡張メソッドがあります。それは意図した目的に完全に機能し、期待される結果が返されます(以下のテストではなく、私のテストの1つで証明されています)が、別の単体テストで問題が発見されました:null引数を処理できません。 これが私がテストしている拡張メソッドです: public static IEnumerable<int> AllIndexesOf(this string str, string searchText) { if (searchText == null) { throw new ArgumentNullException("searchText"); } for (int index = 0; ; index += searchText.Length) { index = str.IndexOf(searchText, index); if (index == -1) break; yield return index; } } 問題を報告したテストは次のとおりです。 [TestMethod] [ExpectedException(typeof(ArgumentNullException))] public void Extensions_AllIndexesOf_HandlesNullArguments() …

4
C#での再入可能なロック
次のコードは、.NETでC#を使用してデッドロックを引き起こしますか? class MyClass { private object lockObj = new object(); public void Foo() { lock(lockObj) { Bar(); } } public void Bar() { lock(lockObj) { // Do something } } }

7
静的インデクサー?
OverаэтотвопросестьответынаStack Overflowнарусском:Перегрузкаиндексаторастатическогокласса C#で静的インデクサーが許可されないのはなぜですか?それらが許可されるべきではなく、さらにそれらが非常に有用である理由は私にはわかりません。 例えば: public static class ConfigurationManager { public object this[string name] { get => ConfigurationManager.getProperty(name); set => ConfigurationManager.editProperty(name, value); } /// <summary> /// This will write the value to the property. Will overwrite if the property is already there /// </summary> /// <param name="name">Name of the property</param> /// …

7
WPFユーザーコントロールの破棄
サードパーティによる使用を目的としたカスタムWPFユーザーコントロールを作成しました。私のコントロールには使い捨てのプライベートメンバーがあり、ウィンドウ/アプリケーションを閉じたときに、そのdisposeメソッドが常に呼び出されるようにしたいと思います。ただし、UserControlは使い捨てではありません。IDisposableインターフェイスを実装してUnloadedイベントをサブスクライブしてみましたが、ホストアプリケーションが閉じても呼び出されません。可能であれば、特定のDisposeメソッドを呼び出すことを覚えているコントロールのコンシューマーに依存したくありません。 public partial class MyWpfControl : UserControl { SomeDisposableObject x; // where does this code go? void Somewhere() { if (x != null) { x.Dispose(); x = null; } } } これまでに見つけた唯一の解決策は、ディスパッチャーのShutdownStartedイベントをサブスクライブすることです。これは合理的なアプローチですか? this.Dispatcher.ShutdownStarted += Dispatcher_ShutdownStarted;
119 c#  .net  wpf  user-controls  dispose 

3
明示的に指定したり、オーバーロードを使用したりせずに、シグニチャーにオプションの引数を持つメソッドをMoqするにはどうすればよいですか?
次のインターフェースがあるとします。 public interface IFoo { bool Foo(string a, bool b = false); } Moqを使用してそれを模擬しようとしています: var mock = new Mock<IFoo>(); mock.Setup(mock => mock.Foo(It.IsAny<string>())).Returns(false); コンパイル時に次のエラーが発生します。 式ツリーには、オプションの引数を使用する呼び出しまたは呼び出しを含めることはできません 上記の問題はMoqの問題リストの拡張として発生したことがわかり、4.5リリースに割り当てられているようです(それがいつでも)。 私の質問は、上記の問題がすぐに修正されない場合、どうすればよいですか?私のオプションは、それをモックするたびにオプションのパラメーターのデフォルト値を明示的に設定する(最初の場所で1を指定するポイントを無効にする)か、またはブール値なしでオーバーロードを作成する(私がしたように)だけですか? C#4より前)? または、誰かがこの問題を克服するためのより賢い方法に出くわしましたか?
119 c#  unit-testing  moq 

7
DateTimeを1970年からの秒数に変換するにはどうすればよいですか?
C#のDateTime変数をUnixの時間、つまり1970年1月1日からの秒数に変換しようとしています。DateTimeは、実際には0001年1月1日からの「ティック」の数として実装されているようです。 私の現在の考えは、次のように、DateTimeから1970年1月1日を引くことです。 TimeSpan span= DateTime.Now.Subtract(new DateTime(1970,1,1,0,0,0)); return span.TotalSeconds; もっと良い方法はありますか?
119 c#  datetime 

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