有“日期、编辑人、文档标题、分类、版本号、备注、附件”几列,想让长传的附件重命名:
如上传了一个名为“出差管理制度.pdf”的附件,如何自动重命名为:“20140927_张三_出差管理制度_V1.pdf”?
我在表的BeforeAttachFile事件中,写了如下代码:
Dim dr As DataRow = e.DataRow '定义正在编辑的行
Dim fn As String = e.FileName ’定义上传的附件文件名,如“出差管理制度.pdf”
Dim Parts() As String = fn.Split(".") '定义一个数组
Dim fn1 As String = parts(0) ’获得文件名,fn1=parts(0)=出差管理
Dim fn2 As String = parts(1) ’获得文件后缀,fn2=parts(1)=pdf
Dim fn3 As String ’合成新的文件名:fn3=日期_编辑人_文档标题_版本号
If dr.IsNull("日期") OrElse dr.IsNull("编辑人") OrElse dr.IsNull("文档标题") OrElse dr.IsNull("版本号") Then
MessageBox.Show("日期,编辑人,文档标题,版本号不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
e.Cancel = True
fn3 = "日期" & "_" & "编辑人" & "_" & "文档标题" & "_" & "版本号"
e.FileName = fn3 & "." & fn2 ’新的文件名:fn3.pdf
End If
我不知道错误在哪?附件文件名依然是以前的文件名。