タグ付けされた質問 「asp.net」

ASP.NETは、プログラマが動的なWebサイトとWebアプリケーションを構築できるようにするために、Microsoftが開発および販売しているWebアプリケーションフレームワークです。これは、.NET Frameworkのバージョン1.0とともに2002年1月に最初にリリースされ、MicrosoftのActive Server Pages(ASP)テクノロジーの後継です。ASP.NETは共通言語ランタイム(CLR)に基づいて構築されているため、プログラマーはサポートされている.NET言語を使用してASP.NETコードを記述できます。

7
本番環境でのユーザーアクションのログ記録のベストプラクティス
この質問は、Software Engineering Stack Exchangeで回答できるため、Stack Overflowから移行されました。 7年前に移行され ました。 私は、ユーザーが次のような場合など、実稼働環境でさまざまなものをログに記録することを計画していました。 ログイン、ログオフ プロフィールを変更 アカウント設定を編集する パスワードを変更...など これは生産環境で行うのに良い習慣ですか?また、これをすべて記録する良い方法は何ですか。現在、次のコードブロックを使用してログに記録しています。 public void LogMessageToFile(string msg) { System.IO.StreamWriter sw = System.IO.File.AppendText( GetTempPath() + @"MyLogFile.txt"); try { string logLine = System.String.Format( "{0:G}: {1}.", System.DateTime.Now, msg); sw.WriteLine(logLine); } finally { sw.Close(); } } これは本番でも大丈夫ですか?私のアプリケーションは非常に新しいので、数百万人のユーザーがすぐに何も期待することはなく、ウェブサイトでのアクションを追跡するためのベストプラクティスを探しています。
21 c#  asp.net  logging 

5
ASP.NETアプリの背後にあるクライアント側のJavascriptとC#コードの間でデータを渡す方法
ASP.NETアプリケーションの背後にあるクライアント側のJavaScriptコードとC#コードの間でデータを渡す最も効率的で標準的な方法を探しています。私はこれを達成するために以下の方法を使用しましたが、それらはすべてちょっとしたファッジを感じます。 JavaScriptからC#コードにデータを渡すには、非表示のASP変数を設定してポストバックをトリガーします。 <asp:HiddenField ID="RandomList" runat="server" /> function SetDataField(data) { document.getElementById('<%=RandomList.ClientID%>').value = data; } 次に、C#コードでリストを収集します。 protected void GetData(object sender, EventArgs e) { var _list = RandomList.value; } 別の方法に戻ると、どちらかのScriptManagerを使用して関数を登録し、Page_Load中にデータを渡すことがよくあります。 ScriptManager.RegisterStartupScript(this.GetType(), "Set","get("Test();",true); または、ポストバックの前、または初期化または事前レンダリングの段階で、コントロールに属性を追加します。 Btn.Attributes.Add("onclick", "DisplayMessage("Hello");"); これらの方法は私に役立って仕事をしてくれましたが、完全ではありません。クライアント側のJavaScriptとC#バックエンドコード間でデータを渡すより標準的な方法はありますか? HtmlElementクラスを説明するこのような投稿を見てきました。これは私が検討すべきものですか?

10
メール通知を設定するためのベストプラクティスとエチケット
この質問は、Software Engineering Stack Exchangeで回答できるため、Stack Overflowから移行されました。 8年前に移行され ました。 Webサイトの顧客が購読する電子メールアラートを設定する場合、どのようなエチケットのルールに従う必要がありますか? 私は頭の上のいくつかを考えることができます: ユーザーはオプトアウトできます テキストのみ(または味のあるリモートイメージ) 週に1回以上送信されない クライアントは、メールの受信対象をきめ細かく制御できます(関心のあるもののみを受信します) 他に考慮すべき点は何ですか? プログラミングの観点から、電子メール通知を設定および実行するための最良の方法は何ですか? ASP.NETサービスを使用する必要がありますか?Windowsサービス?どちらに落とし穴がありますか? 送信された電子メールをログに記録するにはどうすればよいですか?それらが受信されたかどうかは気にしませんが、メールを送信したかどうかを証明する必要があります。

1
MVCのコントローラーとMVVMのViewModelの違いは何ですか?
MVCとMVVMの違いがはっきりとわかりません。ViewModelのCommandは、ControllerのActionメソッドに似ていると思います。また、コントローラーとViewModelの両方が、データバインディングを介してモデルの状態を変更した後、それ自体を更新するようにビューに通知します。2つのパターンの主な違いは何ですか?

7
最も使いやすい言語を使用するか、会社の「標準」を使用するか
私は特定の工場向けにイントラネットサイトを開発する予定であり、当社のWeb開発の標準はIIS + ASP.Net + VB.Net + Microsoft SQL Serverです(約10以上の工場があることに注意してください)。イントラネットサイトは私の工場でのみ使用され、私がそれをサポートするのは私だけです。私はLAMPのセットアップにはるかに精通しており、ASP.Netよりもはるかに迅速にPHPを使用して開発と問題解決を行うことができました。会社の「標準」はASP.Net/VB.Netですが、会社が全体として行うことのほとんどは、サードパーティソフトウェア(通常はJavaベース)を購入することです。会社も知っているASP.Net/VB.Netはもちろん、VB6。 そうは言っても、会社の標準に違反して、私がよりよくサポートできるセットアップを使用する方が良いのか、それとも、現在誰もいなくても会社がよりよくサポートできるセットアップを使用する方が良いとにかく社内で独自の標準をサポートできますか? 私の場合に考慮すべきいくつかの追加要因: 繰り返しますが、これは私の工場だけのためのものであり、私が会社を辞めない限り、これをサポートするのは私だけです。すでに会社にいる誰かはいません。 とにかく、同社は標準でほとんど開発を行っていません。 既存のソフトウェアのほとんどが自社の標準を使用していません。 会社の標準を選択した場合、Microsoft SQLのExpressバージョンとWindows 7 OSを使用する必要があります。私の読書から、Expressバージョンはビジネスでの使用には問題ありませんが、データベースのサイズは制限されています。

2
F#は、データベース駆動型のWeb開発に特に役立つものを提供しますか?
私の組織は今年、ついにMS Visual Studio 2010にアップグレードしました。Visual Studio 2010が提供する大きな新機能の1つは、F#プログラミング言語です。 F#は、Lispと同様の関数型プログラミングパラダイムを提供することを理解しています。ただし、Lispとは異なり、F#は.netフレームワークのマネージコードにコンパイルされます。 現在、私はデータベース駆動型のWebアプリケーション開発に取り組んでいます。現在、私はバックエンドでSQLコードを使用し、フロントエンドでC#.net AJAX Webアプリケーションを使用するn層アプリケーションで作業しています。F#がこの種の開発に特に役立つものを提供しているかどうかを知りたいです。

1
MicrosoftのライブラリがNewtonsoft.Jsonに依存しているのはなぜですか?
これはおそらく、MicrosoftがASP.NET Web APIライブラリを作成したときから始まったものであり、少なくとも私が間違えなければ覚えているときです。とにかく、それ以来、そのHTTPパッケージは、JSONとのデータの(デ)シリアル化のためにNewtonsoft.Jsonライブラリに依存して開始されました。 マイクロソフトと同じくらい大きな会社がオープンソースライブラリへの依存を追加するのはなぜですか?私が知っている限り、それが依存関係として使用される唯一のMicrosoft以外のライブラリだったので、彼らが当時。 おまけの質問として、ジェームズ・ニュートン・キングはマイクロソフトから何らかの財政的支援を受けていますか?
18 .net  asp.net  json  web-api 

3
仮想マシンのCPUコアが増えるとコンパイル時間が遅くなるのはなぜですか?
[編集#2] VMWareの誰かがVMWare Fusionのコピーを見つけたら、VirtualBoxとVMWareの比較と同じようにできるとうれしいです。どういうわけか、VMWareハイパーバイザーはハイパースレッディング用に調整されると思う(私の回答も参照) 私は何か奇妙なものを見ています。Windows 7 x64仮想マシンのコア数を増やすと、全体的なコンパイル時間が減少する代わりに増加します。コンパイルは通常、並列処理に非常に適しています(中間部分(依存関係のマッピング後)で、各.c / .cpp / .cs / whateverファイルでコンパイラインスタンスを呼び出して、リンカーが取得する部分オブジェクトを構築することができます)以上。ですから、実際には、コアの数でコンパイルが非常にうまくいくと想像していました。 しかし、私が見ているのは: 8コア:1.89秒 4コア:1.33秒 2コア:1.24秒 1コア:1.15秒 これは、単に特定のベンダーのハイパーバイザー実装(私の場合はtype2:virtualbox)による設計成果物なのか、ハイパーバイザー実装をより単純にするためにより多くのVMに広がるものなのでしょうか?非常に多くの要因があるので、私はこの振る舞いについて賛否両論を立てることができるようです-だから誰かが私よりもこのことを知っているなら、あなたの答えを読んでみたいです。 どうもありがとう [ 編集:コメントのアドレス指定 ] @MartinBeckett:コールドコンパイルは破棄されました。 @MonsterTruck:直接コンパイルできるオープンソースプロジェクトが見つかりませんでした。素晴らしいと思いますが、今は私の開発環境を台無しにすることはできません。 @Mr Lister、@ philosodad:VirtualBoxを使用して8つのハードウェアスレッドがあるため、エミュレーションなしの1:1マッピングである必要があります @Thorbjorn:VM用に6.5GBと小さなVS2012プロジェクトがあります-ページファイルをゴミ箱に入れたり出したりすることはほとんどありません。 @All:誰かがオープンソースのVS2010 / VS2012プロジェクトを指すことができれば、それは私の(独自の)VS2012プロジェクトよりも良いコミュニティリファレンスかもしれません。OrchardとDNNは、VS2012でコンパイルするために環境を調整する必要があるようです。VMWare Fusionを使用している人にもこれが表示されるかどうかを確認したい(VMWareとVirtualBoxの区分化の場合) テストの詳細: ハードウェア:Macbook Pro Retina CPU:コアi7 @ 2.3Ghz(クアッドコア、ハイパースレッディング= Windowsタスクマネージャーで8コア) メモリー:16 GB ディスク:256GB SSD ホストOS:Mac OS X 10.8 VMタイプ:VirtualBox 4.1.18(タイプ2ハイパーバイザー) …

4
クラシックASPからASP.netまたはASP.net MVC
古典的なASPで開発されたWebアプリケーションがあり、5年間で100ページの巨大なデータベースと毎日少なくとも10ページ以上を通過する10000人以上のアクティブユーザーを含む現在の形式に進化しました。 ここで、最新バージョンの.netにアップグレードしたいと考えました。最初はアプリ全体を書き直すことを考えていましたが、シナリオを分析した後、多くの専門家によって提案されていない実行可能なオプションではないことがわかりました。他の方法でそれを行う方法についてはまだ決定していませんが、顔の書き換えを達成する方法についていくつかの考えを持っています。 オプション1: このアプリケーションのメインモジュールを識別し、データベース(既存)、ビジネスロジック、ビューなどの異なるレイヤーにアプリケーションを分離することで、それらを1つずつ書き換えることを考えました。これにより、新しく開発されたモジュールが既存のシステムに追加され、特定のモジュールの古いページが新しいページに置き換えられます。同時に、古いシステムと一緒に新しいレイヤーをテストし、自信が持てたらリリースします。また、ビジネスロジック用のAPIのような構造を開発することも考えました。これは、外部アプリケーションとしてビューによってアクセスされます。 オプション2: 現時点では、単純なモジュールを作成し、IFrameを介して従来のASPページで使用していますが、従来のASPとIFrameの新しいページとの間でデータを送信するのは非常に面倒でした。 これは、ユーザーベースに影響を与えずにアプリケーション全体を書き換える方法を計画している段階です。 そのようなシナリオでアプローチすべきかどうかについて、他のプログラマーの意見、意見、提案を取得したいですか?誰かがこの種のシナリオに直面した場合、あなたの意見も共有してください。 また、ASP.net MVCの使用がこれに役立つことを知りたいですか? 更新:あなたの意見を述べるための両方の答えをありがとう。アプリケーションを従来のaspからasp.netまたはasp.net mvcに移行する際に、上記で指定した両方のオプションでより多くの入力を取得したいです。asp.netまたはasp.net mvcを選択するという点ではなく、移行の部分についての意見、ポイント、および考えをすべて理解できれば、私にとって大きな助けになります。

4
ASP.NETアプリケーションを開発する場合、CQRS / MediatRは価値がありますか?
私は最近CQRS / MediatRを調査しています。しかし、ドリルダウンすればするほど、それが好きではなくなります。おそらく私は何か/すべてを誤解しました。 だから、これをあなたのコントローラーをこれに減らすと主張することから、それは驚くほど始まります public async Task<ActionResult> Edit(Edit.Query query) { var model = await _mediator.SendAsync(query); return View(model); } Thin Controllerのガイドラインに完全に適合します。ただし、非常に重要な詳細-エラー処理は省略します。 Login新しいMVCプロジェクトからのデフォルトアクションを見てみましょう public async Task<IActionResult> Login(LoginViewModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; if (ModelState.IsValid) { // This doesn't count login failures towards account lockout // To enable password …

2
Webアプリケーションに個別のAPIサーバーとUIサーバーを使用する利点
職場では、2年近く開発中の大規模な内部アプリケーションがあります。私は最近プロジェクトに参加しましたが、アーキテクチャの一部には少し困惑しているので、建築家に同じ質問をする前にここの誰かがアドバイスを提供できることを願っています)。 以下が少し長い場合は申し訳ありませんが、質問する前にシステムが何であるかをよく描きたいと思います:) システムのセットアップ方法は、1つのメインWebアプリケーション(asp.net、AngularJS)があり、ほとんどの場合、他のさまざまなサービスからのデータを集約するだけです。したがって、基本的には、AngularJSアプリケーションのホストです。文字通り、クライアント側をブートストラップする1つのMVCコントローラーがあり、他のすべてのコントローラーはWebAPIコントローラーです。 クライアント側からの呼び出しは、これらのコントローラーによって処理されます。これらのコントローラーは、Webアプリケーションをホストするだけのボックスに常に展開されます。現在、このようなボックスが4つあります。 ただし、呼び出しは最終的にさらに別のWebAPIアプリケーションのセットにルーティングされます(通常、これらはセキュリティ、顧客データ、製品データなどのビジネスエリアごとです)。これらのWebAPIはすべて、専用のボックスにも一緒にデプロイされます。また、これらのボックスが4つあります。 1つの例外を除き、これらのWebAPIは組織の他の部分では使用されません。 最後に、これらのWebAPIは「バックエンド」サービスをさらに別のセットで呼び出します。これは通常、さまざまなERPシステムおよびデータストア(制御不能)の上に置かれたレガシーasmxまたはwcfサービスです。 アプリケーションのビジネスロジックのほとんどは、これらのWebApiにあります。たとえば、レガシーデータの変換、集約、ビジネスルールの実行など、通常のタイプのものです。 私が混乱しているのは、WebApplicationと、それを提供するWebAPIをこのように分離することで得られる利点の可能性です。他の誰もそれらを使用していないため、スケーラビリティの利点はありません(つまり、APIサーバーの負荷の増加はWebサーバーの負荷の増加を意味するため、別の4つのAPIボックスを追加しても負荷はありません)したがって、WebサーバーとApiサーバーの比率は1:1でなければなりません) また、ブラウザ=> HTTP => WebApp => HTTP => WebAPI => HTTP =>バックエンドサービスを追加のHTTP呼び出しを行う必要があるという利点もまったくありません。(WebAppとWebAPI間のHTTP呼び出しが私の問題です) そのため、現在は、現在のWebAPIを個別のソリューションから、WebApplicationソリューション内の個別のプロジェクトに移動し、間に単純なプロジェクト参照と単一の展開モデルを配置することを検討しています。したがって、最終的にはクラスライブラリになります。 展開に関しては、これは4 + 4ではなく8つの「フルスタック」Webボックスがあることを意味します。 新しいアプローチのメリットは次のとおりです。 WebアプリケーションとWebAPIサーバー間のシリアル化/逆シリアル化のサイクルが1つ少ないため、パフォーマンスが向上します。 WebアプリケーションサーバーとWebApiサーバーのそれぞれの発信境界と着信境界のDTOとマッパーに関して削除できる(つまり、メンテナンス/テストする必要がない)大量のコード。 意味のある自動化された統合テストを作成する能力が向上しました。バックエンドサービスを単純​​にモックし、中間層のHTTPジャンプの混乱を回避できるからです。 だから質問は:私は間違っていますか?WebApplicationボックスとWebAPIボックスを分離したという基本的な「魔法」を見逃していませんか? 私はいくつかのN-Tierアーキテクチャの資料を調査しましたが、状況に具体的な利益をもたらすことができるものを見つけることができないようです(スケーラビリティは私が知る限り問題ではなく、これは内部アプリなのでWebAPIアプリケーションに関するセキュリティは問題になりません。) また、システムを提案されたセットアップに再編成した場合、メリットの点で何が失われますか?

4
ASP.NET Web APIソリューションでAngularアプリを配置する場所は?
私はグリーンフィールドアプリを開始しています。ASP.NET(4.6)とAngular 2を使用したいと思います。バックエンドについては、Visual Studioでプロジェクトを作成しましたが、Angularアプリをどこに配置するのか迷っています。私は本当にフロントエンドにnpmとnode-toolsを使用したいのですが、最終的には同じAzure App Serviceインスタンスでホストされ、Angularアプリdomain.com/とその下のapi domain.com/api/などがあります。 Visual Studioでアプリを分離するにはどうすればよいですか?Angularアプリは独自のプロジェクトに含めるべきですか?APIと同じプロジェクトにAngularアプリを使用する必要がありますか?nugetや他のVSツールを使いたくない場合でも?(フロントエンドの場合、VSは多かれ少なかれ見栄えのするコードエディターになります)。この組み合わせのベストプラクティスは見つかりませんでした。

4
TimeZoneに基づいてDateTimeを保存するためのベストプラクティス
ユーザーがTimeZoneに基づいて予定をスケジュールできるWebアプリケーションを開発します。そして、ユーザーの予定日時をサーバー日時としてデータベースフィールドに保存しています。スケジュール情報を表示しながら、データベースから値を取得し、ユーザーtimzoneに変換しました。コードベースでの処理ユーザーのタイムゾーンに基づいてDateTimeを変換しています。このベストプラクティスなのか、それとも簡単な方法が存在するのか教えてください。

5
ASP.Net MVC4の「Web API」とは正確には何ですか?
Web APIとは何かを知っています。 APIを複数の言語(MVC3を含む)で記述しました。 私はASP.Netでもよく練習しています。 MVC4には「Web API」があることを発見しましたが、ビデオの例に目を通さずに、それが何であるかを正確に説明することはできません。 私の過去の経験から、Microsoftテクノロジー(特にASP.Net)は、単純なコンセプトを採用し、すべてを「より簡単にする」ことを目的とした無用のオーバーヘッドに包み込む傾向があります。 誰かがMVC4のWeb APIが何であるかを正確に説明してもらえますか?なぜ必要なのですか?独自のAPIを記述できないのはなぜですか?

7
ASP.NET Ajax、jQuery、およびJavaScriptについて混乱[非公開]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新する Software Engineering Stack Exchangeのトピックになるようにします。 6年前に閉鎖されました。 昨日、ASP.NET 4の本からASP.NET AjaxとjQueryの章をいくつか読んだところ、これらのフレームワークが非常に興味深いことがわかり、それらについてさらに学ぶことにしました。 今日、私はAjaxとJavaScriptのライブラリからいくつかの本を借りました。ASP.NET AjaxはAjaxとは異なり、jQueryは「新しい」JavaScriptのようです。 JavaScriptをスキップしてjQueryを直接学習できるということですか? 一方、私が借りた非ASP.NET Ajaxの本は、クライアント側のWebプログラミングにのみ適用されるようで、ASP.NET Ajaxから学んだものとは大きく異なります。私がASP.NET開発者であれば、クライアント側のAjaxではなくASP.NET Ajaxに固執すべきだと思いますか?PHPはどうですか?ASP.NET Ajaxに似た「PHP Ajax」はありますか? 他のツールを習得するのが面倒なわけではありませんが、適切なツールに集中したいだけです。

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