2017-04-04 110 views
0

我們如何可以上傳CSV通過Web(ASP.NET MVC C#)文件,並在數據庫映射CSV表中的列到我們的表上傳CSV文件,然後映射到表在數據庫

例子:

CSV File: 
Username,Address,Roles,Date 

如何將「用戶名」列中的所有值添加到用戶表,名稱列?

AddrDet表的地址欄中的值地址欄?

'Roles'列中的值是RolesDet表,角色列?

並選擇CSV列添加到數據庫? (所以不是所有的CSV列將採取)

使用ASP.NET MVC C#

因爲我所知道的是,當CSV上傳,它會創建數據表專爲CSV和CSV所有的列會上傳

謝謝

我使用MVC和EF DB頭

+0

本主題有點寬泛,主要有以下幾個步驟:創建頁面以將文件加載到|將CSV文件解析到類|中根據解析的數據創建/更新數據庫/表。 – Tatranskymedved

+0

你能顯示關於這個主題的文檔嗎? – newbs

+0

可能重複:http://stackoverflow.com/questions/20759302/upload-csv-file-to-sql-server –

回答

0

這個問題被標記爲的Upload CSV file to SQL server

重複

我不覺得(&不認爲)該問題涉及到或具有完全相同的主題,所以我正在回答這個問題。我自己把問題標爲太寬泛,因爲有太多需要解釋的問題。

此外,我會添加一些問題的鏈接,但他們不是在這裏填寫答案,只是給OP一個想法什麼問題/主題尋找自己。


簡短說明:

通常當你想導入數據(CSV文件)導入到數據庫中,你已經得到的數據結構&模式(和數據庫)。有現有TableATableB,裏面有一些列。如果您想基於CSV文件動態創建新的列/更新數據庫模式,這是一個不安的工作(通常不會發生)。 C#/ ASP/.NET應用程序正以某種方式工作,您可以通過這種方式爲其提供輸入(來自用戶的點擊,數據加載,任務調度程序通過了一段時間的檢查點),APP執行此項工作。

典型的工作如下所示:「我們獲得了這種格式的數據,APP必須將它們轉換爲內部表示(類),然後將它們插入服務器」。所以你必須編寫一個ASP頁面,在其中允許用戶粘貼/加載文件。例如:File Upload ASP.NET MVC 3.0

一旦您加載了文件,您需要將CSV格式(存儲數據的格式)轉換爲您的內部表示。這意味着創建自己的類,具有一些屬性並將(轉換)CSV轉換爲類。例如:Importing CSV data into C# classes

由於您在類(對象 - 類的實例)內部具有此數據,因此您可以使用它們並執行一些內部工作。這次我們正在查找針對SQL數據庫的CRUD(創建/讀取/更新/刪除)操作。首先你需要連接到SQL服務器,選擇數據庫然後運行查詢。例如:https://www.codeproject.com/Articles/837599/Using-Csharp-to-connect-to-and-query-from-a-SQL-da

大量的開發人員懶得自己編寫查詢,他們喜歡更多的面向對象的訪問這類問題。他們使用ORM - 對象關係映射,它允許用戶在DatabaseApplication中擁有相同的類/對象模式。一個例子是實體框架(EF)。例如爲:http://www.entityframeworktutorial.net/


,你可以看到這個題目也不是那麼容易的,需要知識,編程的幾個部分。

+0

謝謝!我已經知道如何將ASP連接到數據庫,文件上傳,我只是不知道如何將csv列映射到我的數據庫中的列,而不是使用CSV中的所有列哈哈:D – newbs

+0

@newbs在這種情況下,您的問題應該更具體 - >「如何解析CSV文件,排除一些列?」我得到了'column1; column2; column3',我想'classA'中的'Column1'。 =) – Tatranskymedved

+0

是的,就像那樣哈哈 – newbs

相關問題