Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在asp.net mvc中单击按钮将图像文件导入数据库_Sql_Sql Server_Ajax_Asp.net Mvc_Model View Controller - Fatal编程技术网

Sql 如何在asp.net mvc中单击按钮将图像文件导入数据库

Sql 如何在asp.net mvc中单击按钮将图像文件导入数据库,sql,sql-server,ajax,asp.net-mvc,model-view-controller,Sql,Sql Server,Ajax,Asp.net Mvc,Model View Controller,我想将名为的文件夹中的所有图像文件上载到数据库表。我已尝试执行以下操作。但它不起作用,也没有收到任何错误。请帮助我解决此问题 这是我的控球动作方法 [HttpPost] public bool Upload(int? id) { try { //Path of the images in the upload folder var fullpath = Directory.GetFiles(Serv

我想将名为的文件夹中的所有图像文件上载到数据库表。我已尝试执行以下操作。但它不起作用,也没有收到任何错误。请帮助我解决此问题

这是我的控球动作方法

 [HttpPost]
    public bool Upload(int? id)
    {
        try
        {
            //Path of the images in the upload folder
            var fullpath = Directory.GetFiles(Server.MapPath("~/Uploads"));
            List<string> fullPath = new List<string>();
            foreach (var path in fullPath) 
            {
                db.Execute("ImportImage"); //stored procedure
            }
            return true;

        }
        catch (Exception ex)
        {
            throw ex;

        }

    }
我想在其中移动这些图像的表 模型


伟大的您面临的问题是什么?请删除您已经问过的多余问题。您可以稍微处理一下数据类型,因此,可以将图像转换为字节,然后将其作为varbinary存储到数据库中,然后反向从代码中读取它们。因此,每个图像将在一个表中占据一行,如果您有50个图像,那么它将存储50行。。方法的其余部分是正确的还是错误的,因为当我放置断点时,我得到的完整路径为null,那么ajax呢
@using (Html.BeginForm("Upload", "Document", FormMethod.Post))
                            {
                                <input type="button" value="Upload Image" id="uploadImg" class="btn btn-primary" />
                            }

    <script>
        $("#uploadImg").click(function () {
            $.ajax({
                'url': "@Url.Action("Upload", "Document")",
                'type': "POST"
                })
        });
    </script>
CREATE PROCEDURE dbo.ImportImage (
   @ImageFolderPath NVARCHAR (1000)
   )
AS
BEGIN
   DECLARE @Path2OutFile NVARCHAR (2000);
   DECLARE @tsql NVARCHAR (2000);
   SET NOCOUNT ON
   SET @Path2OutFile = CONCAT (
         @ImageFolderPath
         ,'C:\Users\HP\source\repos\ClickLockDB2\EAStarter\Uploads'
         );
   SET @tsql = 'insert into ImagesScanned (ImagesScannedId, DocumentId, ScanPage) ' +
               ' SELECT * ' + 
               'FROM Openrowset( Bulk ' + '''' + @Path2OutFile + '''' + ', Single_Blob) as img'
   EXEC (@tsql)
   SET NOCOUNT OFF
END
GO
public partial class ImagesScanned  
{
    public int ImagesScannedId { get; set; }
    public int? DocumentId { get; set; }
    public byte[] ScanPage { get; set; }
}