問題タブ [class-library]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - 一連のコンストラクターを使用せずにセッション データをクラス ライブラリに渡しますか?
私は、文字通りすべてのオブジェクトが lastUpdatedBy プロパティを持つアプリケーションをここに持っています。ここに入力する情報は、session("username") 変数から取得したユーザーのユーザー名です。
このデータをクラス ライブラリの DAL に渡すにはどうすればよいですか?
最初は各メソッドに値を渡すだけでしたが、これはばかげていると思いました。メソッドが呼び出されるたびにそれを行う理由はないはずです。
それなら、DAL関連のクラスごとにコンストラクタに入れておけば、もっと楽になると思いました。
ただし、特定のページであっても、多数の New() 宣言があり、そのため、セッション ユーザー名を文字列としてキャストして渡す必要があるすべての行があります。
これを1か所でしか宣言できず、すべてがそれが何であるかを認識し、クラスライブラリのクラスに渡すことができるように、これを行うさらに効率的な方法はありますか?
mercurial - Mercurial: .NET 3.5 と 4.0 の両方に存在するクラス ライブラリ?
.NET 3.5 で書かれたかなり大きなクラス ライブラリがあり、これをアップグレードして .NET 4.0 でも利用できるようにしたいと考えています。
その過程で、私は多くの古いがらくたを取り除き、.NET 4.0 (TPL など) での新しいクラスとサポートをより有効に活用するためにいくつかのコードを書き直します。したがって、クラス ライブラリは分岐しますが、それでも十分に類似しています。いくつかのバグ修正は、同じ方法で両方に行うことができます。
Mercurial でこのクラス ライブラリを整理するにはどうすればよいですか? それが重要な場合は、Kiln (fogbugz) を使用しています。
考えている:
- 1 つのリポジトリ内の名前付きブランチは、バグ修正をあるリポジトリから別のリポジトリに移植できます
- 1 つのリポジトリ内の名前のないブランチも移植できますが、これは面倒に見えると思います
- 別のリポジトリでは、バグ修正を再実装する必要があります (または、mercurial に統合されていない比較ツールを使用して助けてください)
あなたならどうしますか?(私が考えていない他の代替案も大歓迎です。)
クラス ライブラリは領域によって大きく異なることに注意してください。Linq に似た処理を行う古いコレクション タイプのコードがいくつか残っていますが、これは削除します。それを使用するコードは、代わりに Linq メソッドを使用するように書き直します。 . そのため、プロジェクト ファイルをコピーして#if NET40..#endif
セクションを使用するだけではうまくいきません。また、クラス ライブラリの 3.5 バージョンには多くの新機能が追加されることはなく、ほとんどが重要なバグ修正のみであるため、両方のバージョンを同じように "有効" に保つ必要はありません。したがって、すべてのファイルの個別のコピーで十分です。
編集@Rudiの回答hereから、彼が言っていることは次のとおりだと思います。
- 2 つのブランチを作成します (または、1 つの「デフォルト」を保持し、もう 1 つのパスに別のブランチを作成します。私の場合は、「デフォルト」=.NET 4.0 と「net35」=.NET 3.5 になります)。
- 分岐するパスに沿ってそれらを開発する
- 重大なバグ修正が見つかり、これが両方のバージョン (つまり、3.5 と 4.0 の両方) に存在し、共通のコードで修正できる場合、3.5 バージョンには多くの新機能が追加されないため、バグがおそらく元のバージョンに存在する可能性があります(分岐する前)
- したがって、元のバージョンから (またはそれに非常に近い) 別のブランチを作成し、バグ修正を実装してから、このヒントを 3.5 ブランチと 4.0 ブランチの両方にマージして両方を更新します。
私はこれについて考えなければならないでしょう。Mercurial でのマージは、変更ではなくファイルをプルするようです。つまり、バグ修正が必要なファイルに加えられた変更は、以前の段階に「マージ」されるリスクがありますが、テストする必要があります。
c# - Asp.net プロジェクトが、クラス ライブラリ内のフォルダーの 1 つを認識していません
C# で Visual Studio 2008 を使用してプロジェクトを開発しています。プロジェクト内にクラス ライブラリを追加し、関連する参照を設定し、関連する using ステートメントを使用しました。この1つのフォルダだけで問題があるようです。誰でも助けることができますか?
これはエラーメッセージです:
エラー 28 タイプまたは名前空間名 'Domain' は、名前空間 'Forestry.SchoolLibrary' に存在しません (アセンブリ参照がありませんか?) C:\Projects\SchoolofForestry\trunk\Source\School\Account\Presenter\EditAccountPresenter.cs 26 40 学校
これらは私の使用ステートメントです:
c# - ASP.NET .aspxまたは.ascxファイルを再利用するにはどうすればよいですか?
誰かが(UIではなく)いくつかのクラスを再利用したい場合、彼はそれらすべてを収集してVisual Studioクラスライブラリに入れ、いくつかのdellにビルドし、これらのdllを配布する必要があります。このアプローチでは、コードは1つだけで、コードを1か所で更新するだけです。
しかし、ASP.NETのマークアップはどうですか?たとえば、ユーザー管理に関する.ascxファイルまたは.aspxファイルのコレクションがあります。それらを別のプロジェクトで使用したい場合は、新しいプロジェクトで再度コピーする必要があります。これにより、保守が非常に難しい2つの同じコードができました。
では、単純な.dllのように.ascxファイルと.aspxファイルを再利用する方法はありますか?たとえば、それらを構築しますか?
どうもありがとう、Afshar Mohebbi
dll - このクラス ライブラリ dll が app.config から情報を取得しないのはなぜですか
私はカスタム HttpHandler を開発しています。そのために、C# クラス ライブラリを作成し、DLL にコンパイルします。
この一環として、アプリにハードコードしたくないディレクトリの場所がいくつかあるので、以前に使用した app.config に入れようとしています。
これが機能する前に、 app.configをビルドするだけです。
そして、次のようなコードでこれを取得します。
しかし、それをコンパイルして webservice の bin フォルダーに入れるとshareDirectory
、おそらく app.config が見つからないため、 が null になり続けます。では、ディレクトリの場所をハードコードする必要がないように、これが含まれていることを確認するにはどうすればよいですか? 基本的に、コンパイル後に assembly.dll と app.config ファイルである assembly.dll.config を取得することに気付きました。したがって、それは間違いなく bin フォルダーにあります。
c# - ASP.NET メンバーシップ、ロール管理、プロファイルは C# クラス ライブラリで使用できますか?
この情報を winform、wpf、またはコンソール アプリケーションで使用できることはわかっています。しかし、私はむしろ、どのロールを持つどのユーザーが特定のメソッドを実行しているかを判断したいので、それらを決定してさまざまなコードを実行できます。
さらに、デスクトップアプリで。ユーザーはどのようにログインできますか? 特別な winform または wpf ログイン コントロールはありますか?
vb.net - クラスライブラリプラグインのデバッグに問題があります
プラグイン(クラスライブラリ)を利用しようとしているWindowsフォームアプリケーションがあります。コードでは、dllファイルからアセンブリをロードしています。これは、デバッグできなかったことを意味します。さらに、ライブラリをコンパイルする方法がわからないため、テストにはデバッグ済みのdllバージョンを使用する必要がありました。プラグインから空白のスレートグループボックスを取得しようとして、新しいオブジェクトを作成し、そのデータをインターフェイスを介してプラグインに送信するというバグに遭遇しました。ただし、パラメーターを新しいオブジェクトとして読み取る代わりに、コードを1回ステップスルーすることができ(方法を聞かないでください。わかりません。繰り返すことができませんでした)、コードが登録されているように見えました。パラメータが「nothing」であるため、メインプログラムでnull参照エラーが発生したのはなぜですか。
このメカニズムをデバッグし、問題がどこにあるかを見つけるためのより良い方法はありますか?問題が何であるかについてのアイデア。私が読んだように、これはやや曖昧に見え、それを説明する方法がわかりませんが、誰かが何が起こっているのかを見て喜んでいて、私が自分自身を理解していない場合は、今すぐ接続会議を主催するつもりです結構。
asp.net - クラス ライブラリから System.Web.Mvc を使用できますか?
私は ASP.NET MVC アプリケーションに取り組んでいますが、プロジェクトからコントローラー コード以外をすべて削除し、独自のクラス ライブラリに配置しようとしています。
私はいくつかのコードを持っています
Using System.Web.Mvc;
しかし、それは私にアクセスさせないようです。System.Web
プロジェクトで名前空間 を参照しました。
基本的に、iActionFilter と FilterAttribute でエラーが発生します。
私は何が欠けていますか?
c# - C# クラス ライブラリの開発者ごとに異なる構成設定
私たちは小さなチームで、asp.net Web プロジェクトとサービスに取り組んでおり、どちらのプロジェクトも共有クラス ライブラリに依存しています。
クラス ライブラリの設定を開発者ごとに (そして後で本番用に) 変更したいと考えています。設定には、パスワードやホスト名などの機密情報が含まれています。
これらの設定をどのように割り当てる必要がありますか?
私が間違っていない限り、web.config/application 設定は共有クラス ライブラリでは機能しないため、十分ではありません。
ps: また、一部の変数は静的にリンクする必要があり、残り (接続文字列など) は動的にする必要があります。
java - javaにはタイマーを表すクラスがありますか?
次の電話をかけることができるタイマークラスが欲しいのですが。
.start()
.getElapsedTime()
.stop()
.reset()
Javaにはそのようなクラスがありますか、それとも私は自分のクラスを使用する必要がありますか(私はすでに書いています)。
ベストプラクティスの観点から、Javaクラスライブラリクラスが存在する場合はそれを使用する必要がありますが、これが存在するかどうかはわかりません。
このクラスのjavadocが存在する場合、誰かが私にリンクを教えてもらえますか?