問題タブ [mvcmailer]
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.
c# - サービス層を壊さずに MVCMailer を使用するには?
より良いメールを作成するためにMVcMailerを使用することを検討しています。
しかし、私が確信していないことの 1 つは、コードを整理する方法です。私は現在2つのプロジェクトを持っています。1 つは mvc 用、もう 1 つはリポジトリとサービス レイヤー用です。
私の2番目のプロジェクトにはMVCの知識がなく、そのままにしておきたいです。
私のsmtpコードはサービスレイヤーまたはラッパーに入り、メールを送信する必要があるときに他のサービスレイヤーから呼び出すことを考えています。
では、MVC メーラーはどこに収まるのでしょうか? コントローラーで本文を生成してから、それを smtp クラスに渡すサービス層に渡しますか?
asp.net-mvc-3 - MvcMailerはRazorの代わりに.aspxファイルを使用できますか
最近Mvcmailerをインストールしました。デフォルトのビューエンジンはRazorに設定されています。(可能であれば)ASP.NETViewEngineに切り替える方法を知りたい
asp.net-mvc-3 - MvcMailer: Url.Action を使用する Razor ビューで NUnit テストを完了できない
これが私の問題です - 私はMvcMailerを使用して、Razor 構文を使用して適切にフォーマットされた電子メールを作成しています。これは、そのために使用する優れたツールです!
私が直面している問題はこれです-これは私が送信した電子メールの1つに対する私のビューからのいくつかの構文です:
単体テストを実行しようとすると、次のエラー メッセージが表示されます。
新しいコメントの電子メール通知を送信できますか?: System.ArgumentNullException : 値を null にすることはできません。パラメータ名: httpContext
Stacktrace - 簡潔にするために短縮されています。関連するセクションのみ:
System.Web.Routing.RouteCollection.GetRouteData (HttpContextBase httpContext) で Mvc.Mailer.MailerBase.CreateControllerContext() で Mvc.Mailer.MailerBase.ViewExists (文字列 viewName、文字列 masterName) で Castle.Proxies.Invocations.MailerBase_ViewExists.InvokeMethodOnTarget ( ) Castle.DynamicProxy.AbstractInvocation.Proceed() で
問題は、私の HttpContext が null であることです。コントローラー コンテキストからルート結果まですべてをモックすることなく、この MvcMailer メソッドを単体テストする簡単な方法はありますか?
c# - Rhino Mock を使用した MvcMailer 単体テストの方法
新しいプロジェクトでは、MvcMailer を使用しています。これは素晴らしいので、Rhino と NUnit を使用してテストする方法を知りたいですか? SO に関する別の投稿と優れた Wiki ページがありますが、私が探しているものではありません。私のコントローラーでは、通常、MvcContrib の Testhelperでテストします。
- 最初にメーラー クラスをモックしようとしましたが、これを行うと、ViewBag データを検証できません。PopulateBody メソッドに問題があり、独自の IMailerBase インターフェイスを構築する必要があります。
- この後、MvcContrib を使用してコントローラーと同じようにメーラーをテストしようとしましたが、InitializeController() で Controller オブジェクトしか受け入れないため、機能しませんでした。
- MailerBase.cs クラスにも IsTestModeEnabled プロパティがありますが、それに対してテストすると、空の URI でエラーが発生します。
これを行う最善の方法がわからないので、助けを求めています。みんなありがとう!
asp.net-mvc-3 - ブラウザでのMvcMailerビュー
WebサイトでMvcMailerを使用してHTMLメールを送信しています。良さそうですが、作成したメールをブラウザで表示するにはどうすればよいのでしょうか。
たとえば、一部のニュースレターでは「このメールをブラウザで表示する」と書かれているので、MvcMailerでそれをどのように行うことができるのか疑問に思っています。
unit-testing - MvcMailerユニットテスト:System.ArgumentNullExceptionhttpContextをnullにすることはできません
Visual StudioテストスイートとMoqを使用して、MvcMailerの単体テストを正常に実行できません。ウィキの例を一語一語コピーしましたが、毎回次の例外が発生します。
コードは次のとおりです:(VSユニットテストフレームワークを使用-例のようにnUnitを使用した場合とまったく同じエラー)
Welcome()メソッドの次の行で失敗します(wikiから直接コピーされます):
wikiはここにあります:https ://github.com/smsohan/MvcMailer/wiki/MvcMailer-Step-by-Step-Guide
同様の(ほぼ同じ)質問:MvcMailer:Url.Actionを使用するRazorビューでNUnitテストを完了できません
誰かがこれを修正/回避する方法を知っていますか?リンクされた質問は、私が行ったPopulateBodyメソッドをモックアウトする必要があると言っています(wikiによる)。
asp.net-mvc-3 - MVCMailerを使用して画像をメールに埋め込む
MVCMailerを使用して画像をメールに埋め込むにはどうすればよいですか?
私はの線に沿って何かを試しました
成功しませんでした。
例はありますか?
ありがとう
asp.net-mvc - ボディ問題のMvcMailerロシア文字セット
アプリにMVCMailerをインストールしています。しかし、ロシア語の文字セット本文を使用してメールを送信すると、次のようなメッセージが表示されます。
ÏðèâåòñòâóåìÂàñíàñàéòå
格好良いですね。:)
詳細については、IUserMailer.csを表示できます。
およびUserMailer.cs:
_Layout.cshtml:
そしてWelcome.cshtml
どうもありがとう!:)
asp.net-mvc - MvcMailer: モデルを介してユーザー入力を表示し、それをメールに挿入する
これを正しく説明しているかどうか、または解決策がかなり単純かどうかはわかりません。したがって、次のようになります。
私は MvcMailer を使用していますが、その前に Quote.cshtml というウィザード入力フォームをセットアップしました。Quote.cshtml の背後に、QuoteModel.cs というモデルをセットアップしました。
最も基本的な Quote.cshtml (ウィザードのロジックはすべて除外し、1 つの入力のみを表示しています):
QuoteModel.cs (ここでも、1 つの入力のみを表示します。nb: DataAnnotationExtensionsを使用)
現在、IQuoteMailer.cs、QuoteMailer.cs、_Layout.cshtml、および QuoteMail.cshtml をセットアップする MvcMailer を統合しようとしています。QuoteMail.cshtml は、最終的にメールの受信者に表示されるものです。また、MvcMailer に必要な適切なコードを配置した QuoteController.cs もセットアップしました。QuoteMailer.cs と QuoteController.cs で、Quote.cshtml (QuoteModel.cs のモデルに基づいています) からユーザー入力を渡すのに問題があります。
IQuoteMailer.cs:
QuoteMailer.cs:
QuoteMail.cshtml (_Layout.cshtml は非常に標準的なため、ここには表示されません):
そして最後に、QuoteController.cs の関連部分 (私はウィザードを使用していることに注意してください。したがって、MvcMailer コードを配置する場所を見つけることが問題の一部ですが、私はそれが正しいと思います):
public class QuoteController: コントローラ {
}
したがって、私が作成した QuoteModel を渡す方法に混乱しているため、最終的にはユーザーが入力したデータを取得して MvcMailer ビューを生成できます。
コミュニティの助けに感謝します。