かなうなことをされていたのですかとASP.NET MVC動方法
-
20-08-2019 - |
質問
のASP.NET MVCコントローラのアクションの方法は主に処理するために使用されている"業務"操作することが可能で使用できません。-
なのかなと思っているのも楽しいのではないでしょう創造的であり、役立つように作成した行動できる実用化やめました。
ここでの私の貢献
Javascriptファイルconcatenatorる 減数http:
[OutputCache(Duration = 5 * 60, VaryByParam="")] // DONT USE "None" here *
public ContentResult RenderJavascript(){
StringBuilder js = new StringBuilder();
StringWriter sw = new StringWriter(js);
// load all my javascript files
js.AppendLine(File.ReadAllText(Request.MapPath("~/Scripts/jquery.hoverIntent.minified.js")));
js.AppendLine(File.ReadAllText(Request.MapPath("~/Scripts/jquery.corner.js")));
js.AppendLine(File.ReadAllText(Request.MapPath("~/Scripts/rollingrazor.js")));
return new ContentResult()
{
Content = js.ToString(),
ContentType = "application/x-javascript"
};
}
地図ルートで
// javascript
routes.MapRoute(
"js-route",
"dynamic/js",
new { controller = "Application", action = "RenderJavascript" }
);
参照から修士のページ:
<script type="text/javascript" src="/dynamic/js"></script>
すると警告しいセットのキャッシュを出力していただけ変更JSと爽やかのページをございを無効にするにはキャッシュ!
I jsutばいてくれる方を募集している方法を見つけ出すことgzipです。
*
ただし利用VaryByParam="None"がその原因の変化するヘッダを送信する 原因は、ブラウザを戻ってチェックのための新しいバージョン.だって変更jsコンテンツをユーザーにも聞にて5分することができました!
解決
な HTTPリダイレクト301 としてカウントマ?
public class PermanentRedirectResult : ActionResult
{
public string Url { get; set; }
public PermanentRedirectResult(string url)
{
if (string.IsNullOrEmpty(url))
{
throw new ArgumentException("url is null or empty", "url");
}
this.Url = url;
}
public override void ExecuteResult(ControllerContext context)
{
if (context == null)
{
throw new ArgumentNullException("context");
}
context.HttpContext.Response.StatusCode = 301;
context.HttpContext.Response.RedirectLocation = Url;
}
}
他のヒント
ビュー結果をメールでの確認:
public abstract class ViewResultWithConfirmationEmail: ViewResult
{
protected readonly string toAddress;
protected ViewResultWithConfirmationEmail(string toAddress)
{
this.toAddress = toAddress;
}
protected abstract MailMessage CreateEmail(ControllerContext context);
protected override void ExecuteResult(ControllerContext context)
{
MailMessage message = CreateEmail(context);
var smtpClient = new SmtpClient();
smtpClient.Send(message);
base.ExecuteResult(context);
}
}
一部の実装の詳細を切り捨てて表示しておこなうことを実施する RegistrationSuccessResult
クラスは、例えば、メールメッセージに適切なテキストを成功させた後、ユーザー登録が必要です。
その理由を選んだメッセージを発信するサブクラス化ViewResultではなく、行動方法自体がしやすいように私の別ユニット。
実際には、"アクション"の手法ながら、そのカスタム コントローラー を実装したルート-ベースRPCの実装です。それによると、契約方法のルートデータやパスの通話はサーバサイドのサービスの実装です。写効率的に(あり、正当な理由があるんだけを使用WCF又は石鹸).
などの多くのご利用も念のサービスで確張するスクリプトはかなどで必要なビューの変化です。地域のコンパイルを親プロジェクトについてはコンパイルは保存でにdevアジリティだが、念のサービスで確張.