WCF 服务不保存来自 Ionic App 的图像
WCF Service not save image from Ionic App
我正在开发一个应用程序并上传图像 Ionic 我的 WCF 服务,问题是当图像来自我的 WCF 代码时没有正确保存。保存为图片无效。
[OperationContract]
[WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "upload2/{fileName}")]
string Upload2(string fileName, Stream fileStream);
public string Upload2(string fileName, Stream fileStream)
{
try
{
FileStream fileToupload = new FileStream(WebConfigurationManager.AppSettings["FilePath"] + fileName, FileMode.Create);
byte[] bytearray = new byte[10000];
int bytesRead, totalBytesRead = 0;
do
{
bytesRead = fileStream.Read(bytearray, 0, bytearray.Length);
totalBytesRead += bytesRead;
} while (bytesRead > 0);
fileToupload.Write(bytearray, 0, bytearray.Length);
fileToupload.Close();
fileToupload.Dispose();
return "succ";
}
catch (Exception ex)
{
return ex.Message + " - " + ex.InnerException;
}
}
代码控制器AngularJs,
$scope.subirFoto = function() {
var options = new FileUploadOptions();
options.fileKey = "post";
options.fileName = imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType = "image/jpeg";
options.chunkedMode = false;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI("http://192.68.1.182:8085/IServiceTopStore.svc/upload2/"+options.fileName), win, fail, options);
}
如有需要请在下方解决
[OperationContract]
[WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "UploadImage/{fileName}")]
string UploadImage(string fileName);
public string UploadImage(string fileName)
{
try
{
HttpPostedFile file = HttpContext.Current.Request.Files["post"];
if (file == null)
return null;
string targetFilePath = WebConfigurationManager.AppSettings["FilePath"] + fileName;
file.SaveAs(targetFilePath);
return "succ " + file.FileName.ToString(); ;
}
catch (Exception ex)
{
return ex.Message + " - " + ex.InnerException;
}
}
离子:
$scope.subirFoto = function() {
var options = new FileUploadOptions();
options.fileKey = "post";
options.fileName = imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType = "image/jpeg";
options.chunkedMode = false;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI("http://192.1.1.1:8085/IServiceTopStore.svc/upload2/"+options.fileName), win, fail, options);
}
我正在开发一个应用程序并上传图像 Ionic 我的 WCF 服务,问题是当图像来自我的 WCF 代码时没有正确保存。保存为图片无效。
[OperationContract]
[WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "upload2/{fileName}")]
string Upload2(string fileName, Stream fileStream);
public string Upload2(string fileName, Stream fileStream)
{
try
{
FileStream fileToupload = new FileStream(WebConfigurationManager.AppSettings["FilePath"] + fileName, FileMode.Create);
byte[] bytearray = new byte[10000];
int bytesRead, totalBytesRead = 0;
do
{
bytesRead = fileStream.Read(bytearray, 0, bytearray.Length);
totalBytesRead += bytesRead;
} while (bytesRead > 0);
fileToupload.Write(bytearray, 0, bytearray.Length);
fileToupload.Close();
fileToupload.Dispose();
return "succ";
}
catch (Exception ex)
{
return ex.Message + " - " + ex.InnerException;
}
}
代码控制器AngularJs,
$scope.subirFoto = function() {
var options = new FileUploadOptions();
options.fileKey = "post";
options.fileName = imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType = "image/jpeg";
options.chunkedMode = false;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI("http://192.68.1.182:8085/IServiceTopStore.svc/upload2/"+options.fileName), win, fail, options);
}
如有需要请在下方解决
[OperationContract]
[WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "UploadImage/{fileName}")]
string UploadImage(string fileName);
public string UploadImage(string fileName)
{
try
{
HttpPostedFile file = HttpContext.Current.Request.Files["post"];
if (file == null)
return null;
string targetFilePath = WebConfigurationManager.AppSettings["FilePath"] + fileName;
file.SaveAs(targetFilePath);
return "succ " + file.FileName.ToString(); ;
}
catch (Exception ex)
{
return ex.Message + " - " + ex.InnerException;
}
}
离子:
$scope.subirFoto = function() {
var options = new FileUploadOptions();
options.fileKey = "post";
options.fileName = imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType = "image/jpeg";
options.chunkedMode = false;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI("http://192.1.1.1:8085/IServiceTopStore.svc/upload2/"+options.fileName), win, fail, options);
}