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

C#は、Microsoftが.NETプラットフォームと並行して作成した、マルチパラダイムで管理されたガベージコレクションのオブジェクト指向プログラミング言語です。

1
TFSがあるときにPowerShellで展開スクリプトを作成するのはなぜですか?
自動展開/継続的インテグレーションを実験しており、チームリーダーと話し合いました。 PowerShellでビルド/デプロイメントスクリプトを作成することを調査していることを彼に伝え、自動デプロイメントはGUIを使用してTFSで非常に簡単に設定できるので、代わりに調査する必要があると述べました。VSからソース管理にコミットする以外は、TFSの経験はありません。 TFSが失敗するのはどのような場合で、自動展開のためにPowerShellを使用した方がよいでしょうか。TFSの代わりにPowerShellを選択する他の理由と利点は何ですか? そして別のこと:たとえば、TFSからJSファイルを縮小するサードパーティツールを実行できますか? 私が考えることができるPowerShellのいくつかの利点: PowerShellは最大の柔軟性を提供します Mercurialなどの別のソース管理システムに簡単に切り替えることができます スクリプトはTFSが生成するものよりも保守が容易になります PowerShellは軽量です。どのPCでもスクリプトを実行できます

5
2つのDLLが競合して、ビルドするソリューションが妨げられる可能性はありますか
特定のケースがありますが、一般的な状況について疑問に思いました。 2つのDLLをVisual C#プロジェクトへの参照として追加すると、ソリューションが構築されないように互いに衝突する可能性がありますか?これが事実である場合、これを軽減する可能な方法は何ですか。

6
RazorまたはXSLTは私のプロジェクトに適していますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 6年前休業。 私は、本質的に2つの部分に分割されるシステムの設計の初期段階にいます。1つはサービスで、もう1つはODataやXMLなどのデータを提供するサービスとのインターフェースです。アプリケーションは、MVCアーキテクチャパターンに基づいています。ビューについては、ASP.NETでXSLTまたはRazorの使用を検討しています。 XSLTまたはRazorは、元のXMLまたは応答がモデルを表す場合、XSLTまたは 'Razorビュー'がビューを表す場合の懸念を分離するのに役立ちます。この例では、コントローラーを省略します。最初の設計提案ではXSLTを推奨していますが、よりフレンドリーなビューエンジンとしてRazorを使用することを提案しました。 これらは私がRazor(C#)に提案した理由です: より複雑なページの操作と作成が簡単になります。 * ML以外の出力(csv、txt、fdfなど)を簡単に生成できます 冗長でないテンプレート ビューモデルは強く型付けされており、ブール値や日付値など、XSLTは規則に依存する必要があります。 マークアップはより近づきやすいです。たとえば、nbsp、改行の正規化、属性値の正規化、空白ルール 組み込みのHTMLヘルパーは、DTO属性に基づいてJS検証コードを生成できます 組み込みのHTMLヘルパーはアクションへのリンクを生成できます そして、かみそりよりもXSLTの議論は: XSLTは標準であり、今後も何年も存続します。 誤ってロジックをビューに移動するのは難しい プログラマー以外の方が簡単です(同意しません)。 過去のいくつかのプロジェクトで成功しています。 データ値はデフォルトでHTMLエンコードされます 常に整形式 だから私はどちらかの側の意見、推奨事項、または同様の選択をする経験を探していますか?
9 c#  asp.net-mvc  xslt  razor 

3
一般的な共有メソッドを配置する場所
私はどこでもよく使われる方法をたくさん持っています。現在、コードファイルはグローバルと呼ばれ、それらが...実際...グローバルであるという事実を表しています。 しかし、私はこれが好きではありません。 これらをクラスにグループ化し、インターフェースを渡したいです。私はインスタンスを1つだけ作成しますが、ここではシングルトントラップに陥りません。 まず、クラスの名前は何にしましょうか。メンテナが間違った考えを理解するのではないかと心配しているので、グローバル名は避けたいです。 また、このような一連のメソッドを分割して、動作を変更および適応できるようにするにはどうすればよいですか? メソッドのセットには、次のようなものが含まれます。 変換表 クリップボードの相互作用 ビルドされたフォントの管理 一般的な描画方法 頻繁に使用するリソースにアクセスできるインターフェースを提供する
9 c# 

4
.Net(C#)でのWebスクレイピングのパターンと実践[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 外部のWebサイト/アプリケーションを自動化するためのアプリケーションを作成します。場合によっては、ユーザーと同じようにサイトをナビゲートする必要があります(たどる必要があるリンクは予測できず、応答から解析する必要があります) 私はすでにHtml Agility Packを使用しており、それが必要な場合はTidyを認識しています。 他に知っておくべき技術はありますか? 外部Webアプリが変更された場合にすばやく調整できる推奨パターンはありますか?応答の検証を、必要に応じて簡単に分離/プラグインできる、ある種の戦略または同様のパターンとしてカプセル化することを想定していますが、具体的な提案があればすばらしいでしょう。
9 c#  .net  html  web-scraping 

4
「代替品」のトレーニング、どのように標準を施行するのですか?
これがこれを尋ねるのに適切なスタック交換サイトであるかどうかはわかりませんが、ここに行きます... 範囲 私は数百人の従業員を抱える小さな会社で働いています。同社の開発チームは小規模で、ビジュアルフォックスプロで作業しています。同社の特定の部門が、既存の請求システムを修正および強化するために「孤独なガンマン」として私を雇いました。多くのリスクと制限に悩まされていたAccessアプリケーションを正常に取得し、SQLサーバーバックエンドから駆動されるC#アプリケーションに変換しました。 私は最近学部を取得しましたが、決して専門家ではありません。それを補うために、マイクロソフト認定資格を取得すると.netとそれがどのように機能するかについて理解を深める必要があると感じました。 だから、9ヶ月前に通知してから3ヶ月前にようやく交換品が出てきました。彼らの役割は、C#で設計されたアプリケーションをサポートするために私が設計してきたことを学ぶことです。 交換 実務経験のない大学を出たばかりで、データに関連するあらゆることに対する最初の本能はリストボックスであり、現在もそうです...データが言及されるときはいつでも、リストボックスが置換の選択のコントロールです。これは、他のコントロールについて何度も説明しましたが、1つのフォームに5つのリストボックスが表示されているので、問題になりました。Classroomのエクスペリエンスは、ほとんどすべてのC ++コンソール開発でした。 したがって、私が懸念している例は、winformsアプリケーションです。ユーザーは、理由をテーブルにキー入力して後で選択する必要があります。厳密に型指定されたデータセットが存在することがわかっている場合、ツールボックスからデータソースをドラッグするだけで、これらすべてが作成されます。これは簡単な例ですが、データバインディングを使用することが重要です。 過去数か月間、強く型付けされたデータセット、その使用方法、および他のコントロールとの相互作用の場所について話してきました。データセット、バインディングソース、アダプター、およびデータグリッドビューに関連してどのように機能するか。このプロジェクトを引き渡した後、これらを実装する方法についての質問が予想されました。次に何が起こったのかというと、ただ床を下ろしただけです。 強く型付けされたデータセットのアダプタのインスタンスがフォームのアクティブ化イベントで作成され、テーブルが作成されてデータが入力されました。次に、このテーブルからリストボックスに行を手動で追加するループが作成されました。最後に、必要に応じて、更新のためにレコードがどのIDであったかを調べるために、変数を参照して保持しました。 彼らはあなたが尋ねる記録をどのように変更しますか?それも私の最初の質問でした。あなたはそれがどれほど単純であるか信じられないでしょう、あなたがそれをダブルクリックするだけで、彼らはそれを変更するために新しい値をポップアッププロンプトに入力します。データ入力演算子として、すべてのモーダルポップアップは私を完全に狂気にさせます。最終的なソリューションは、維持する必要がある100行のコードを超えています。 だから私の懸念は、これらのどれも沈んでいないということです...部門は彼らの時間の週20時間しか許可されていません。先週まで、運が良ければ週4〜5時間しか与えられませんでした。先週かそこらで、私は幸運にも10を手に入れました。 質問 私は何をしますか?! 私が去るまであと4週間あり、彼らはこのアプリケーションを完全に「サポート」しています。私はこの仕事とそれが私に与えた機会を愛していますが、私が私の翼を広げて、何か新しいものを見つける時が来ました。私は決して彼らが引き継ぐ準備ができていると確信しているわけではありません。 置換には「構成する」という技術的能力があると思いますが、学習する代わりに、これらすべてを手動で行うコードを書くだけです。置換が最終的に別の方法でコーディングしたい場合、それが機能する限り、それを見ると恐ろしいのでそれで大丈夫です。しかし、私は、彼らが設計したものをサポートするためのMUSTそれがどのように動作するかを理解するために、私は「魔法」は実現するためにコントロールやフレームワークを使用していますか。 このプロジェクトには約40のフォーム、30以上の奇数のテーブル、トリガー、ストアドプロシージャを含むデータベースがあります。それは労働と請求書、契約と予測の関係です...私がこのプロジェクトを始めたのは3年前ほど簡単ではなく、現在、部署はそれなしでは生き残れない立場にあります。 世界でどのようにして次のことを達成できますか?: 部署のマネージャーがやりたいことはできるが、できることを伝え続ける場合は、一貫した設計の標準または理解を強化する 代替をサポートするために必要なフレームワークとシステム設計の積極的な学習に取り組む方法を見つける 優雅にSRに知らせてください。週5〜9時間の管理では、部門、既存のプロセス、サポートする必要のあるアプリケーションについて学び、システムの潜在的な機能強化がどこにあるかを判断するには十分ではありません。 はい、私はこれがテキストの壁であることを知っています。私を読んでくれてありがとうございますが、私は何をすべきかわからないだけです。私にとって、この仕事はリファレンスの怪物であり、私が離れて物事がばらばらになると、物事は非常に悪く見えるでしょう。これをどのように処理しますか?

2
プロジェクトのGUI、BLL、DAL組織
私はアプリケーションレイヤーについて読んでおり、次のプロジェクト(c#、. Net)でこのデザインを使用したいと考えています。いくつかの質問: レイヤーの分離は名前空間を通じて行われますか?Project.BLL.Whatever、Project.DAL.Whatever レイヤー、コンポーネント(Project.BLL.Component1)、またはコンポーネント、レイヤー(Project.Component1.BLL)で分離する方が適切ですか? 私のDALの場合、このレイヤーはさまざまなクラスを使用してさらに編成されますか?すべてのデータベース呼び出しが単一のクラスに入れられる場合、組織はありません。これらを異なるクラスまたは名前空間に分割する方が良いでしょうか? DALクラスは通常静的ですか?毎回そのメソッドの1つを呼び出す前にDALオブジェクトをインスタンス化するのは面倒です。 これらのレイヤーで正しい方法で物事を行うためのその他のヒントをいただければ幸いです。

5
開発前に最新のアプリケーションをモデリングするための標準は何ですか?
私は最初のエンタープライズレベルのアプリケーションに取り掛かっています。コードを1行もタップする前に、チームでASP.NET MVC C#アプリケーション全体をモデル化してください。 更新:これは、いつアプリケーションを文書化/モデル化するかについての哲学的議論を意図したものではありませんでした。文書化/モデル化の「方法」についてのみ回答を提供してください。 真実は、私がこの部門で常に失敗したことがあり、アプリケーションをこれまで実際にモデル化したことがないということです。これを行うための標準的な方法は何ですか?どのタイプの図を使用する必要があり、ドキュメントはどのように見えますか?サンプルの図とドキュメントへのリンクは高く評価されています。 検索するとき、私はネット上で多くのことを見つけることができますが、これを行う方法について現在のコンセンサスがあるかどうかを確認したいと思いました。 前もって感謝します! おわりに 私はこれがそんなにねばねばした主題であるとは知りませんでした。明白な論争を取り除き、有用な回答を提供してくれた皆さんに感謝します。控えめに言っても興味深い議論でした:) 私が発見した別の便利なリンクはこれです:https : //stackoverflow.com/questions/61487/do-you-use-uml-in-agile-development-practices/61519#61519

12
C#のプロパティ結合演算子
C#のnull結合演算子を使用すると、コードを短縮できます if (_mywidget == null) return new Widget(); else return _mywidget; 至るまで: return _mywidget ?? new Widget(); C#で使用したい便利な演算子は、オブジェクトのプロパティ、またはオブジェクトがnullの場合は他の値を返すことができる演算子であることに気づきました。交換したいので if (_mywidget == null) return 5; else return _mywidget.Length; と: return _mywidget.Length ??! 5; この演算子が存在しないのには何らかの理由があるに違いないと私は思わずにはいられません。コード臭?これを書くためのより良い方法はありますか?(私はnullオブジェクトパターンを知っていますが、これらの4行のコードを置き換えるためにそれを使用するのはやり過ぎのようです。)
9 c#  code-smell  null 

6
モバイルアプリケーション開発のためにJavaを学ぶべきですか、それともC#だけで学べますか?
.NETフレームワークを掘り下げるのを楽しみにしていますが、ほとんどのモバイルアプリケーションはJavaで開発されているようです。私はおそらくAndroidやiphone OSではなく、NokiaやMotorollaのようなより安価な電話をターゲットにするでしょう。これらのものをC#で実行できますか?
9 java  c#  mobile 

10
C#からJavaに切り替えて、気にする必要がある「落とし穴」はどれですか。
ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 新しいプロジェクトではJavaに切り替えなければならない場合があります。私はJavaについてほとんど知識がありません。私は主にC#を研究して使用しており、これら2つの言語/プラットフォームの違いが多くの問題を引き起こす可能性があることを恐れています。 私が気にする必要がある落とし穴/落とし穴はどれですか?
9 java  c#  .net  pitfalls 

2
なぜDateTime.Monthがintなのですか?
C#では、DateTimeプロパティMonthのタイプはint(32ビットの符号付き整数)ですが、その範囲は1〜12のみです。C#チームが(8ビットの符号なし整数)intなどの小さい数値型を選択した理由は何byteですか?
9 c#  memory 

4
コレクションを表すクラスの反復:IEnumerable <T>とカスタムメソッド
何かの列挙/コレクションであるクラスを実装する必要があることがよくあります。このスレッドのために考えてみましょう不自然な例のIniFileContentラインの列挙/コレクションです。 このクラスがコードベースに存在しなければならない理由は、ビジネスロジックがいたるところに広がらないようにする(=をカプセル化するwhere)ためであり、可能な限りオブジェクト指向の方法でそれを実行したいからです。 通常、以下のように実装します。 public sealed class IniFileContent : IEnumerable&lt;string&gt; { private readonly string _filepath; public IniFileContent(string filepath) =&gt; _filepath = filepath; public IEnumerator&lt;string&gt; GetEnumerator() { return File.ReadLines(_filepath) .Where(l =&gt; !l.StartsWith(";")) .GetEnumerator(); } public IEnumerator IEnumerable.GetEnumerator() =&gt; GetEnumerator(); } IEnumerable&lt;string&gt;使用が便利になるので、実装を選択します。 foreach(var line in new IniFileContent(...)) { //... } しかし、そうすることでクラスの意図を「隠す」のだろうか?人がIniFileContentインターフェースを見たときだけ見るEnumerator&lt;string&gt; GetEnumerator()。クラスが実際に提供しているサービスは自明ではないと思います。 次に、この2番目の実装を検討します。 …
9 c# 

1
多層プロジェクトでは、インターフェイスをどこに定義する必要がありますか?
3つのサブプロジェクト(データアクセスプロジェクト、ビジネスロジックプロジェクト、プレゼンテーションプロジェクト)で構成される多層プロジェクトがあります。インターフェイスをどこに定義すればよいですか?DALとBLLの両方で定義されたインターフェイスがあるはずだと思います。インターフェイスに基づく「テスト」データを使用してビジネスロジックレイヤーをテストする状況では、おそらく、インターフェイス? これをどのように配置すべきかに関するベストプラクティスまたはアイデアはありますか?

3
プロパティが暗黙的にデリゲートに変換できないのはなぜですか
C#のプロパティは、実際の単純な古いメソッドにコンパイルされることは誰でも知っています。しかし、method(-group)とは異なり、Func&lt;T&gt;orまたはAction&lt;T&gt;(getterおよびsetter)のようなデリゲートを期待する他のメソッドへの引数としてそれらを与えることはできません。これを禁止する特別なものはありますか、それともメソッドグループをデリゲートに暗黙的に変換可能にするときに「無料」で提供されなかった機能だけですか? コード例: public class MyClass { public static int X { get; set; } } private static void Foo&lt;T&gt;(Func&lt;T&gt; f) { Console.WriteLine(f()); } private static void Bar&lt;T&gt;(Action&lt;T&gt; f) { f(default(T)); } private static void Test() { // neither of these lines compile, even with an explicit type-cast. Foo(MyClass.X); Bar(MyClass.X); } …

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