当我将代码从VS2015部署到IIS时,我遇到了一个不寻常的问题。在VS中,当我运行Web代码(调试或发布)时,我选择并加载然后转换为base64的映像将转换为字节数组并保存到数据库,而不会出现任何问题。但是,当我部署到Web服务器时,代码无法正常工作,并且映像从未更新。我没有收到任何错误信息。只要我从VS运行它,一切都可以。 IIS服务器上是否需要配置某些东西?任何帮助或评论将不胜感激。
HTML代码
<form class="input-group" id="img2b64">
<input id="inputFileToLoad" name="files" type="file"
onchange="encodeImageFileAsURL();" />
</form>
<!-- is used to display b64 code and hold the b64 for ajax call to controller -->
<textarea id="b64" class="form-control"></textarea>
JQUERY代码
function encodeImageFileAsURL(cb) {
return function () {
var file = this.files[0];
var reader = new FileReader();
reader.onloadend = function () {
cb(reader.result);
}
reader.readAsDataURL(file);
}
}
$('#inputFileToLoad').change(encodeImageFileAsURL(function (base64Img) {
$('#act_Photo').attr('src', base64Img);
$('#b64').val(base64Img);
}));
在控制器代码中
// model.ImageFile is the base64 string
if (!string.IsNullOrEmpty(model.ImageFile))
{
// strip out base64 header
int pos = model.ImageFile.LastIndexOf(',') + 1;
string data = model.ImageFile.Substring(pos);
// get byte array of base64 image
byte[] bytes = Convert.FromBase64String(data);
// convert and save as byte array to DB
var acctImg = new WebImage(bytes).Resize(220, 200, false, true);
// aRec.Photo is in DB record
aRec.Photo = acctImg.GetBytes();
}
答案 0 :(得分:0)
似乎一切都很好。我在IIS中重新启动了站点。似乎是一个导致所有悲伤的缓存问题。有时我只是讨厌缓存。