需要在服务器端数据库中建立以下字段

二进制、文件名、扩展名

 Private Sub 上传_Execute()' 在此编写您的代码。Dispatchers.Main.Invoke(Sub()'注意!!!要新建数据记录并保存后,才能使用上传功能。否则会提示未生成实例错误。Dim openDialog As New Controls.OpenFileDialogopenDialog.Filter = "All File|*.*"If openDialog.ShowDialog = True ThenUsing fileData As System.IO.FileStream = openDialog.File.OpenReadDim fileLen As Long = fileData.LengthIf fileLen > 0 ThenDim sizeInMB = fileLen / 1048576If sizeInMB > 2 ThenMe.ShowMessageBox("File Cannot be > 2MB") : Exit SubEnd IfDim fileBArray(fileLen - 1) As Byte : fileData.Read(fileBArray, 0, fileLen) : fileData.Close()'把打开的文件存入数据库二进制字段,upfileProperty为屏幕中名称,如为子表或窗口。则为me.表名.selectitem.字段Me.SjWenJianGuanLiSet.SelectedItem.文件二进制 = fileBArray'把打开的文件扩展名存入数据库文件类型 = openDialog.File.Extension.ToString'把打开的文件名存入数据库Me.SjWenJianGuanLiSet.SelectedItem.文件名称 = openDialog.File.Name.ToStringEnd IfEnd UsingEnd IfEnd Sub)End Sub

***********************************************************************************

 Private Sub 下载_Execute()' 在此编写您的代码。Dispatchers.Main.Invoke(Sub()If Me.SjWenJianGuanLiSet.SelectedItem.文件二进制 Is Nothing ThenMe.ShowMessageBox("数据库未上传相关文件!", "提示!", MessageBoxOption.Ok)Exit SubEnd IfDim ms As System.IO.MemoryStream = New System.IO.MemoryStream(Me.SjWenJianGuanLiSet.SelectedItem.文件二进制)Dispatchers.Main.Invoke(Sub()Dim saveDialog As New Controls.SaveFileDialogsaveDialog.DefaultFileName = Me.SjWenJianGuanLiSet.SelectedItem.文件名称If saveDialog.ShowDialog = True ThenUsing FileStream As Stream = saveDialog.OpenFilems.WriteTo(FileStream)End UsingEnd IfEnd Sub)End Sub)End Sub

***********************************************************************************

Private Sub 打开_Execute()' 在此编写您的代码。TryIf AutomationFactory.IsAvailable ThenIf Me.SjWenJianGuanLiSet.SelectedItem.文件二进制 Is Nothing ThenMe.ShowMessageBox("数据库未上传相关文件!", "提示!", MessageBoxOption.Ok)Exit SubEnd IfDim fullFilePath As String = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), Me.SjWenJianGuanLiSet.SelectedItem.文件名称)Dim fileData As Byte() = Me.SjWenJianGuanLiSet.SelectedItem.文件二进制.ToArrayIf fileData IsNot Nothing ThenUsing fs As New FileStream(fullFilePath, FileMode.OpenOrCreate, FileAccess.Write)fs.Write(fileData, 0, fileData.Length)fs.Close()End UsingEnd IfDim shell = AutomationFactory.CreateObject("Shell.Application")shell.shellexecute(fullFilePath)End IfCatch ex As Exception'Me.ShowMessageBox(ex.ToString)End TryEnd Sub

二进制文件大小验证控制:

Private Sub 文件二进制_Validate(results As EntityValidationResultsBuilder)' results.AddPropertyError("<错误消息>")'服务器端验证文件大小是否超过2MB,会影响性能。如页面中出现验证次数较少的话,建议页面中验证。If Me.文件二进制 IsNot Nothing ThenDim sizeInMB = Me.文件二进制.Length / 1048576If sizeInMB > 2 Thenresults.AddPropertyError("File Cannot be > 2MB")End IfEnd IfEnd Sub

LightSwitch文件的上传,下载及保存(数据库版)相关推荐

  1. ACTIVEX实现大文件FTP上传下载---上

    ACTIVEX实现大文件FTP上传 在Windows 操作系统下,有一个重要的机制,就是OLE ,就是可以让某个应用程序(OLE Controller)访问其它应用程序(OLE Server)所提供的 ...

  2. 基于layui.upload.js 拖拽文件/文件夹上传下载

    layui.upload.js 拖拽文件/文件夹上传下载 前言 js代码 页面使用(我这里用的是uploader.jsp) CSS文件 上传效果 总结 前言 项目需求完成文件上传,可以拖拽上传文件/文 ...

  3. 使用JSP+Servlet实现文件的上传下载上传

    <!DOCTYPE html > <html> <head> <meta charset="UTF-8"> <title> ...

  4. Java使用SFTP和FTP两种连接服务器的方式实现对文件的上传下载

    一.Java实现对SFTP服务器的文件的上传下载: 1.添加maven依赖: <dependency><groupId>com.jcraft</groupId>&l ...

  5. 文件的上传下载功能的实现(包括进度条)[telerik控件]

    文件的上传下载功能的实现(包括进度条) 1.准备工作 首先我们需要Telerik控件,数据库,上传文件文件夹. Telerik控件: RadUpload.RadProgressManager.RadP ...

  6. ssm框架验证码图片加载不出_基于SSM框架的文件图片上传/下载功能实现

    前一段时间很多做毕业设计的同学问:如何写图片和文件的上传下载功能,今天正好有时间,所以就做了一个案例,详细的讲解这个功能. 框架结构: 对于很多做过开发的而言,上传功能肯定都用过,而且用到的场景很多, ...

  7. 5. 文件上传下载 与 db数据库

    5. 文件上传下载 与 db数据库 文件上传 formidable multer npm i formidable multer 如何使用见: https://www.npmjs.com/ util. ...

  8. 文件的上传下载(一)

    2019独角兽企业重金招聘Python工程师标准>>> 最近公司培训,所以收集整理了一些关于上传下载的资料,进行了整理与大家分享. Struts对文件上传的支持非常好,它是通过jak ...

  9. 云计算学习笔记004---hadoop的简介,以及安装,用命令实现对hdfs系统进行文件的上传下载

    1.Hadoop简介 1.hadoop的诞生 l  Nutch和Lucene之父Doug Cutting在2006年完成Hadoop项目. l  Hadoop并不是一个单词,它来源于DougCutti ...

  10. java 文件下载 组件_java文件夹上传下载组件

    核心原理: 该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. *如何分片: *如何合成一个文件: *中断了从哪个分片开始. ...

最新文章

  1. TensorFlow人工智能引擎入门教程之二 CNN卷积神经网络的基本定义理解。
  2. 数据表记录包含表索引和数值,请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。...
  3. cartographer坐标系_cartographer 调参(1)-lua文件配置参考文档
  4. mysql端口转发_SSH做MySQL端口转发
  5. Microsoft Visual Studio 打开代码出现乱码解决方案
  6. mysql hex2bin_mysqlbinlog指令
  7. Java-虚拟机-执行引擎/解释器/编译
  8. ahb总线协议主机_AMBA总线协议之一文看懂AMBA2 AHB2与AMBA3 AHBLite总线协议的区别
  9. 脚本自动化互相阅读文章教程
  10. SQLserver常用创建表 添加字段sql
  11. 快手短视频怎么同步到头条?
  12. 高效办公!Python 批量生成PDF文档
  13. 信息系统项目管理师:信息、信息化、信息系统、信息系统开发方法
  14. java Bean拷贝忽略空属性
  15. SSO(Single Sign On)系列(三)--CAS单点登录
  16. 1个网卡设置多个IP作用
  17. Undefined control sequence. \begin{document}
  18. sangerbox使用教程_用iTOL轻松绘制高颜值系统进化树
  19. 微信小程序 组件的边框设置 border
  20. Python 开发录屏功能

热门文章

  1. [从头读历史] 第245节 三皇与五帝时期的全面解读
  2. 平淡生活:我跑完了马拉松
  3. 10、使用pods(cocopods)创建XCode工程
  4. 全球开发者幸福指数报告新发现
  5. GIF:王大雷手抛球发动进攻,张弛完美弧线兜射破门_虎扑中国足球新闻
  6. 移动端下拉刷新infinitescroll
  7. SVM与Logistic回归的区别
  8. java static int a_java中static作用详解
  9. 《重学Java系列》之 反射(上)
  10. 偏态分布的激素水平影响因素分析