正如问题所述,我在网页上有两个按钮。一个按钮在点击时打开一个文件对话框,允许用户从他们的文档中选择CSV。第二个按钮应该将文件内容和一些其他参数发送到Azure SQL Server。所有这些都在Azure Web服务中的ASP.NET Web App上运行。我的代码如下所示,我已经试过了,我不能告诉如果它是注册在所有,我没有得到输出到控制台,也没有记录在我的数据库中。任何帮助将不胜感激!(编辑:当然,sqlConnection中的“”是我的连接字符串所在的位置)
下面是我的尝试:
@using System.Data.SqlClient;
<form>
<!-- HTML -->
@{
ViewData["Title"] = "Home Page";
}
<body>
<input type="file" id="fileInput" style="display:none;" />
<button id="selectFileButton">Select File</button>
<label id="fileNameLabel" style="margin-left:10px;"></label>
<button id="uploadButton">Upload</button>
</body>
</form>
@section scripts {
<script>
// JavaScript
document.querySelector("#selectFileButton").addEventListener("click", function () {
document.querySelector("#fileInput").click();
});
document.querySelector("#fileInput").addEventListener("change", function () {
var file = document.querySelector("#fileInput").files[0];
document.querySelector("#fileNameLabel").innerText = file.name;
});
document.querySelector("#uploadButton").addEventListener("click", function () {
var file = document.querySelector("#fileInput").files[0];
if (file) {
var reader = new FileReader();
reader.onload = function () {
var parameters = {
data: reader.result,
fileName: file.name
};
Upload(parameters);
};
reader.readAsArrayBuffer(file);
}
});
@{
void Upload(string fileName, byte[] fileContent)
{
try
{
// Use a SqlCommandBuilder to send the data to SQL Server
using (var sqlConnection = new SqlConnection(""))
{
var sqlCommand = new SqlCommand("SET IDENTITY_INSERT BLOBS ON INSERT INTO BLOBS (BatchID, CustomerNumber, CSV, DataType) VALUES (@BatchID, @CustomerNumber, @CSV, @DataType) SET IDENTITY_INSERT BLOBS OFF", sqlConnection);
sqlCommand.Parameters.AddWithValue("@CustomerNumber", "9002");
sqlCommand.Parameters.AddWithValue("@CSV", fileContent);
sqlCommand.Parameters.AddWithValue("@DataType", "TestASP");
sqlCommand.Parameters.AddWithValue("@BatchID", 61);
sqlCommand.ExecuteNonQuery();
}
}
catch (Exception ex)
{
Console.WriteLine("An error occurred while uploading to the database: " + ex.Message);
}
}
}
</script>
}
1条答案
按热度按时间rqqzpn5f1#
1.在Azure中创建SQL数据库。
1.在azure数据库中创建表-
tblContent
。使用下面的代码能够连接数据库,并能够插入数据到表中。