Smobiler上海石磨_.NET移动开发平台
标题:
如何从手机里把文件上传到服务器
[打印本页]
作者:
pepperdiyu
时间:
2020-1-3 08:48
标题:
如何从手机里把文件上传到服务器
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
我想把手机里的图片、视频上传到服务器,通过
<div> this.camera1.Mode = CameraMode.Album;</div><div> camera1.AlbumCount = 9;</div><div> this.camera1.GetClientPhotoPath();</div>
复制代码
将所有文件显示到 albumView 中,用户可以删除选中的图片或视频
<div> private void camera1_ClientImageCaptured(object sender, ClientResourceResultArgs e)</div><div> {</div><div> foreach (KeyValuePair<string, string> clientRes in e.Resources)</div><div> {</div><div> this.albumView1.Items.Add(new AlbumViewItem(clientRes.Value));</div><div> this.albumView1.Items.Refresh();</div><div> }</div><div> }</div>
复制代码
可是如何将文件上传到服务器中呢,我尝试了
<div> System.Net.WebClient mClient = new WebClient();</div><div> mClient.UploadFile(sURL, "POST", sFile);</div>
复制代码
系统报错,说不支持URI
我又尝试了
<div> BinaryResultArgs br = new BinaryResultArgs();</div><div> br.SaveFile(sFile, MobileResourceManager.DefaultImagePath);</div>
复制代码
说数据为空?
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
急
有没有什么别的办法啊
作者:
Lula.Jin
时间:
2020-1-3 10:20
可参考
https://www.smobiler.com/guide/file.aspx
作者:
pepperdiyu
时间:
2020-1-3 14:09
Lula.Jin 发表于 2020-1-3 10:20
可参考https://www.smobiler.com/guide/file.aspx
camera 在拍照的时候, this.camera1.Mode = CameraMode.CameraAndAlbum;
1、选择 相机 触发 camera1_ImageCaptured , 如果没有调用 e.SaveFile 保存 e.ResourceID 仅仅是一个文件名称,没有路径
2、选择相册 触发 camera1_ImageCaptured , 返回的是 照片的完整路径
问题来了,
1、选择 相机 我想预览照片(比如显示到 albumView1 里面),如何获取 ResourceID 呢??
2、如果 使用this.camera1.GetClientPhotoPath(); 通过调用 camera1_ClientImageCaptured事件,可以获取手机文件, for (int i = 0; i < albumView1.Items.Count; i++)
{
string sFile = albumView1.Items
.ResourceID;
}
我如何将用户确认过的文件上传到服务器呢?
this.Client.File.Upload((obj, args) =>
{
if (args.isError == false)
{
args.SaveFile(sFile, MobileResourceManager.DefaultImagePath);
this.Toast(string.Format("{0}", args.ResourceID));
}
else
{
Toast(args.error);
}
});
这段代码又让用户重新进行选择,感觉很累赘,能不能直接使用 BinaryResultArgs SaveFile???
作者:
Lula.Jin
时间:
2020-1-6 11:11
使用camera上传图片,图片数据在camera1_ImageCaptured事件的参数e.Data,
实现预览可以窗体中加入image控件,image1.ResourceData=e.Data image1.ResourceMode = ResourceMode.Data;
作者:
linyan
时间:
2020-1-15 17:41
这是一个比较普遍的问题,希望官方技术支持能给出一个比较完整的代码。
作者:
linyan
时间:
2020-1-15 19:00
根据官方技术支持指引,上传相册照片的程序如下:
private void button1_Press(object sender, EventArgs e)
{
camera1.GetPhoto();//调用照相机
}
private void camera1_ImageCaptured(object sender, BinaryResultArgs e)
{
string Name1 = @"C:\inetpub\wwwroot\images\个人半身照片";
image1.ResourceData = e.Data;
image1.ResourceMode = ResourceMode.Data;
if (string.IsNullOrEmpty(e.error))
{
//e.SaveFile();//不指定路径,图片默认保存在项目下\bin\Debug\Resources\Upload下
//e.SaveFile("图片名称"); 保存图片,图片名称自定义
//e.SaveFile("图片名称", MobileResourceManager.DefaultImagePath); 第二个参数为路径,图片保存在项目下\bin\Debug\Resources\Image下
e.SaveFile("黄龙风光20200115.jpg", Name1);//重新命名照片,指定上传文件夹并上传。
}
}
作者:
linyan
时间:
2020-1-17 17:43
此处一传图片非原图,3-4M的图片上传后大概是100多K,能否设置一个上传原图的选项?
欢迎光临 Smobiler上海石磨_.NET移动开发平台 (https://www.smobiler.cn/)
Powered by Discuz! X3.2