locked
Web application with document management RRS feed

  • Question

  • User-941767363 posted
    Hello everyone,
     
     
    I'm going to develop a Web environment, using ASP.NET Core and the Razor page. One of the main features of the system is that the user can download a document (typically Office). Once the document has been downloaded (to the client) it must be opened automatically in order to be modified. At the end of the modifications the user must be able to upload the same to make it available again to other users.
    I'm asking you if it is possible to create such functionality with the architecture mentioned above (Web application). What do you think?
     
    Thanks
    Stefano
    Tuesday, November 19, 2019 2:10 PM

All replies

  • User475983607 posted

    Mila

    <div>Hello everyone,</div> <div> </div> <div> </div> <div>I'm going to develop a Web environment, using ASP.NET Core and the Razor page. One of the main features of the system is that the user can download a document (typically Office). Once the document has been downloaded (to the client) it must be opened automatically in order to be modified. At the end of the modifications the user must be able to upload the same to make it available again to other users.</div> <div></div> <div>I'm asking you if it is possible to create such functionality with the architecture mentioned above (Web application). What do you think?</div> <div> </div> <div>Thanks</div> <div>Stefano</div>

    This functionality already exists.  See Office 365 online or SharePoint.

    Tuesday, November 19, 2019 2:29 PM
  • User-474980206 posted

    To do properly, you will need to implement WebDav, a document protocol used by office. You will need a WebDAV library for .net core. Google for a solution.

    Tuesday, November 19, 2019 3:09 PM
  • User711641945 posted

    Hi Mila,

    I'm asking you if it is possible to create such functionality with the architecture mentioned above (Web application). What do you think?

    Of course,you can.As for how to design,it up to you.

    I suggest that you could use DevExpress controls for ASP.NET Core.You could refer to the following document:

    https://docs.devexpress.com/AspNetCore/400972/office-inspired-controls/controls/rich-edit/document-management

    https://demos.devexpress.com/ASPNetCore/Demo/RichEdit/LoadAndSave/

    Best Regards,

    Rena

    Wednesday, November 20, 2019 7:42 AM
  • User-941767363 posted

    Hi, Thank you for your answer. I will investigate it better.

    Wednesday, November 20, 2019 8:47 AM
  • User-941767363 posted

    Hi, I don't want and can't replace Office features

    Wednesday, November 20, 2019 8:48 AM
  • User-474980206 posted

    if you don't implement webdav, you only option is:

    1) link to documents that do a download. you supply an action that passed the selected document, returns it as file. google for lots of examples. after the download, the browser will  allow the download to opened in office.

    2) an upload form. using form with a file submit, the user can select the modified file an upload. typly the UI will allow the user to select the document to replace and have an upload button.

    if you implement webdav, office can directly edit the document on the server. 

    Wednesday, November 20, 2019 5:47 PM
  • User-941767363 posted

    Hi Bruce, thanks for your support!

    can you be so kind to describe me better your proposal / solution?

    1) link to documents that do a download. you supply an action that passed the selected document, returns it as file. google for lots of examples. after the download, the browser will  allow the download to opened in office.

    How can I implement a "link" to a specific document that download the file (better in a specific client folder without prompint any questions/options to end user) and open it immeditely?

    Best

    Stefano

    Thursday, November 21, 2019 10:05 AM
  • User-474980206 posted

    assume your razor:

     @Model.DocumentName <a href="@Url.Action("download","documents",new {id=Model.DocumentId})">download</a>

    in the DownLoad action it would return a File with the correct mime-type of the document. You control whether it downloaded only (disposition=attachement) or downloaded and then opened in the browser(if supported by the browser). If the makes changes and saves, a dialoag will appears asking where to save. the user then needs to upload the saved document.

    so you add:

    @for (var i=0; i < Model.Length; ++i)
    {
       <div>
         Model[i].DocumentName 
         <a href="@Url.Action("download","documents",new {id=Model[i].DocumentId})">download</a>
         <form 
            action="@Url.Action("upload","documents")" 
            method="post"
            enctype="multipart/form-data"
         >
            <input type="hidden" name="id" value="@Model[i].DocumentId" />
            <input type="file" name="document" value="upload" onchange="this.form.submit()"/>
         </form>
       </div> 

    after saving changes, the user clicks the upload button, a dialog will open where they can pick the file just saved. after they select the file will be uploaded to your action. 

    Thursday, November 21, 2019 7:05 PM
  • User2135862179 posted

    Here is A document management system such as LogicalDOC can help your organization better manage business processes and put order in the chaos of documents every day run your business.

    Wednesday, July 15, 2020 8:32 AM