問題タブ [alternateview]
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# - c# で Properties.Resources から LinkedResource を追加します。
を使用してメール メッセージに jpeg 画像を追加する
うまくいきますが、プロジェクト Properties.Resources.Pic から画像を追加する必要があります。
どうすればそれができますか?
layout - ZF2 MVC プロジェクトで条件付き書式設定を行う適切な方法は何ですか?
私が開発中の ZF2 プロジェクトでecho $this->content;
は、メイン コンテンツ領域の条件付き書式設定を許可する、layout.phtml のステートメントの周囲にシェルを作成したいと考えています。具体的には、コンテンツを 75% 幅の列に配置し、ほとんどのページで 25% 幅の列に「装飾」要素をいくつか含めたいと考えています。ただし、より多くのスペースが必要なページは 1 列に変更したいと考えています。私のプロジェクトは CMS で、各ページには属性があり、ビューまたはコントローラーにページが通常か幅かを伝えることができます。私は自分が求めているものを達成するための多くの方法を検討しました。
私の「レイアウト ビューでの条件付き書式」は次のようになります。
上記の方法は機能する可能性がありますが、純粋な MVC の場合、レイアウト ビューで意思決定を行う必要はないと思います。
私の「部分ビューでの条件付き書式」は次のようになります。
ここでは、意思決定はレイアウト ビューから取り出されますが、単純に他のビューに配置されるため、まだビュー パッケージにあり、純粋な MVC ではありません。
私の「コントローラーでの条件付き書式設定」ソリューションでは、一対の html スクリプト文字列がコントローラー関数で作成され、ビューに渡されます。次のようになります。
このメソッドでは、意思決定はコントローラーで行われるべきだと思いますが、そこにhtmlを書いているのは奇妙に思えます。
コメントや提案はありますか?
c# - ファイルを iCalendar に添付する
iCalendar の会議出席依頼を SMTP 経由で (以下のコードを使用して) 正しく送信していますが、ファイルを添付しようとすると、ファイルが iCalendar の一部として表示されません。Outlook で開いた後に .ics を保存すると、ファイル データ全体が取り除かれます。
私が使用しているコードは次のとおりです。
iCalendars の RFC ( https://www.rfc-editor.org/rfc/rfc5545 ) を確認しましたが、仕様に従ってすべてのことを行ったと思います。ファイルの読み込み方法 (Convert.ToBase64String ビット) に問題があるか、代替ビューに何かが欠けている (他の人が複数のビューを追加しているのを見たことがあります) と推測しています。
私が試したこと:
- Convert.ToBase64String(File.ReadAllBytes(file), Base64FormattingOptions.InsertLineBreaks) を Convert.ToBase64String(File.ReadAllBytes(file), Base64FormattingOptions.None) に置き換えます。
- System.Text.Encoding を使用してファイルを BASE64 に変換します (成功しません)。
- (MailMessage.Attachments を使用して) ファイルを電子メールに直接添付しますが、それは電子メールを通常の電子メールとして表示するだけです。
sourceforge の DDay.iCal プロジェクト ( http://sourceforge.net/projects/dday-ical/ ) も調べましたが、ファイルを添付するときにどのように機能するかわかりませんでした。
このための要件の 1 つは、ファイルをメールに埋め込む/添付する必要があることです。残念ながら、URI として追加することはできません。
誰でも助けることができますか?
更新: arnaudq のアドバイスに従って、RFC に記載されているように、行を 75 文字でラップするように実装しました。結果の MIME メッセージは次のようになります。
残念ながら、これはまだ機能せず、ファイル (この場合は単純なプレーン テキスト ファイル) が Outlook のカレンダー エントリに含まれません。
本当に興味深いのは、上記の MIME メッセージを手動でファイルに保存し、名前を .ics に変更して開くと、添付ファイルが正しく表示されることです。これは、iCalendar マークアップではなく、メッセージの送信方法に問題があると思わせます。
何が間違っているのですか?
implicit - Aegis Implicit Mail AIM AlternateView in MimeMailMessage
AIM Aegis Implicit Mail を使用して Implicit ssl メールを送信しています。
メール メッセージで件名と本文を使用する場合は問題ありませんが、別のビューを使用するとメールの本文が空になります。この別のビューのセットアップは、メールメッセージで動作し、受信クライアントに応じて html とテキスト本文を持ちますが、デバッグ コードでは問題ないように見えますが、メールボックスで受信すると空である MimeMailMessage を使用する必要があります。
コードは次のとおりです。
c# - メール テンプレートに画像を挿入する
いくつかの画像を含むメールを送信するメソッドを構築しています。私のテンプレートは、そのビュー モデルのコレクションに基づく部分ビューです。画像は、img タグ (インライン画像) の src に入れた base64 文字列です。部分ビューが完全に構築されたら、RazorEngine を使用してビューを文字列に解析します。 NotificationHubClient) は HTML 文字列を SendGrid テンプレートのパラメーターとして送信します。
ただし、電子メールを受信すると、どのクライアントにも画像が表示されません。電子メール クライアントがインライン画像をブロックしていると思われます。したがって、CIDを使用して画像を添付すると思います。しばらく前にその方法を使用しましたが、CID を適切に機能させるには、AlternateView を生成する必要がありますが、AlternateView は MailMessage (System.Net.Mail) でのみ機能します。
私はこのスレッドを見つけました: How to convert EmailMessage alternative views into SendGrid Html and Text そして、似たようなものを構築しようとしました:
返された文字列をパラメーターとして Send 関数に渡しますが、メールを受信すると、やはり画像が表示されず、CSS も失われています。
AlternateView を含む MailMessage を、添付された画像を含む html 文字列に変換する方法を知っていますか?
必要な場合、これらは電子メールを送信し、AlternateView を生成する関数です。
前もって感謝します。