0
ASP.NET MVC 4アプリケーションでCaptchaを追加しました。通常、キャプチャを初めて読み込むには時間がかかります。それで完璧なスピードでうまくいっています。しかし初めて、時間がかかります。ここでMVC4アプリケーションでCaptchaを高速にロードするには?
は私CADEです:?誰が(DLLまたは何か他のものをロードすることによって)より速く、それをロードするために私を提案することができます
DLL: SRVTextToImage
CSTML:
<script>
$(document).ready(function() {
img = document.getElementById("img_captcha");
var d = new Date();
var n = d.getTime();
debugger;
@*img.src='@Url.Action("GetCaptchImage", "Contact")?'+n;*@
$.ajax({
url: '@Url.Action("GetCaptchImage", "Contact")?'+n,
}).done(function(response) {
var filePath = "contact/GetCaptchImage?"+n;
img.src=filePath;
document.getElementById('span_loading').style.display = 'none';
document.getElementById('img_captcha').style.display = 'inline-block';
});
</script>
<img src="" id="img_captcha" style="width: 200px;display: none;vertical-align: middle;" />
コントローラー:
[HttpGet]
[OutputCache(NoStore = true, Duration = 0, VaryByParam = "None")]
public FileResult GetCaptchImage()
{
CaptchaRandomImage CI = new CaptchaRandomImage();
this.Session["CaptchaImageText"] = CI.GetRandomString(5);
CI.GenerateImage(this.Session["CaptchaImageText"].ToString(), 300, 75, Color.DarkGray, Color.White);
MemoryStream stream = new MemoryStream();
CI.Image.Save(stream, ImageFormat.Png);
stream.Seek(0, SeekOrigin.Begin);
return new FileStreamResult(stream, "image/png");
}