最近公司要求开发一个网上交易平台,在技术上要求使用asp.net mvc2.0,项目中有个用户发布文章的模块,就是说在文章发布的表单中有个“添加附件”的功能,其实就像在论坛里发帖那样,帖子里面可以带有附件。我看到人家那些网站上这个功能是这样的:点击“发布”按钮(或链接)来到文章发布页面(表单),点击里面的“添加附件”链接(好像不是链接,但看上去像个超链接),弹出“选择文件”窗口,选好文件后,上传(有进度条显示,完成后,出现“删除”链接,表示还可以删除该附件)。我的项目中这个功能的数据库表设计是这样的,一个“文章表”和“附件表”,附件表的字段是:Id(编号),ArticleId(文章编号,关联“文章表”的Id),Name(附件名称),Address(附件地址,附件在服务器上的文件路径)。我看了别人网站上这个功能,我现在的问题是,选择附件后,附件开始上传(注意:发布文章的表单还没有提交,没点那个“发布”按钮),这时附件是否是上传到服务器上?如果是,那“附件”表又如何添加一条记录?ArticleId如何关联(因为文章尚未发布)?总之,用asp.net mvc实现在“发布文章”中的“添加附件”功能的内部流程是怎么样实现的?请园子里的高手们帮解答一下,感激不尽!
你说的功能是不是就跟博客园现在这个提交答案的编辑框类似呢?可以附加一些图片,视频之类的。你可以在网上下载 CuteEditor来使用,上传附件后是上传到服务器的,你点击发布的时候就可以跟附件表关联起来嘛,设置好CuteEditor,发布的时候获取输入的内容和添加的附件标识就可以了。
你要这样设计,在附件表中,没必要关联文章的ID,只要管好附件的上传就好了,在上传问之后,保存好相关的附件地址(这时,对附件进行删除操作的时候,更新相关的地址变量),最后,文章发布的时候在把这个附件地址写入文章表就好啦