【问题标题】:Post a Variable into Database using Input Tag使用输入标签将变量发布到数据库中
【发布时间】:2023-03-17 02:31:01
【问题描述】:

我使用 asp.net mvc 创建了一个图像上传器,可以将图像发布到数据库中。但我想添加一个输入以将相关的 url 发送到 sql server DB。 对于视图部分,我定义了两个输入,如下所示:

<div class="form-group">
 <label>Choose File:</label>
  <div class="input-group">
   <div class="custom-file">
    <input type="file" id="fileupload" name="fileupload" class="custom-file-input" /><br />
     <input type="text" id="urlname" name="urlname" class="form-control" />
     <label class="custom-file-label"></label>
    </div>
     <div class="input-group-append">
     <input type="submit" id="btnUpload" class="btn btn-secondary" value="Upload" />
     </div>
    </div>
   </div>

对于控制器,我创建了一个 post 命令来将数据发送到数据库。但我不知道在 URL Path 变量中放置什么。

[HttpPost]
    public ActionResult UploadSliderImage(HttpPostedFileBase fileupload)
    {
        if (fileupload != null)
        {
            string fileName = Path.GetFileName(fileupload.FileName);
            int fileSize = fileupload.ContentLength;
            int Size = fileSize / 1000;
            fileupload.SaveAs(Server.MapPath("~/SliderImages/" + fileName));

            string CS = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString;
            using (SqlConnection con = new SqlConnection(CS))
            {
                SqlCommand cmd = new SqlCommand("spAddNewSliderImage", con);
                cmd.CommandType = CommandType.StoredProcedure;
                con.Open();
                cmd.Parameters.AddWithValue("@Name", fileName);
                cmd.Parameters.AddWithValue("@FileSize", Size);
                cmd.Parameters.AddWithValue("FilePath", "~/SliderImages/" + fileName);
                cmd.Parameters.AddWithValue("@URLPath", ??);
                cmd.ExecuteNonQuery();
            }
        }
        return RedirectToAction("UploadSliderImage");
    }

这是我为存储数据而创建的表和程序:

CREATE TABLE [dbo].[CarouselSlider](  
[ID] [int] IDENTITY(1,1) NOT NULL,  
[Name] [nvarchar](50) NULL,  
[FileSize] [int] NULL,  
[FilePath] [nvarchar](100) NULL,  
[URLPath] [varchar](100) NULL, 
CONSTRAINT [PK_CarouselSlider] PRIMARY KEY CLUSTERED   
(  
[ID] ASC  
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = 
OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]  
) ON [PRIMARY]  

GO  

CREATE procedure [dbo].[spAddNewSliderImage]  
(  
 @Name nvarchar(50),  
 @FileSize int,  
 @FilePath nvarchar(100),
 @URLPath varchar(100)  
)  
as  
begin  
insert into CarouselSlider(Name,FileSize,FilePath,URLPath)   
values (@Name,@FileSize,@FilePath,@URLPath)   
end  

CREATE procedure [dbo].[spGetAllSliderImage]  
as  
begin  
Select ID,Name,FileSize,FilePath,URLPath from CarouselSlider   
end  

谢谢...

【问题讨论】:

    标签: asp.net sql-server model-view-controller


    【解决方案1】:

    我找到了答案,这里是:

    [HttpPost]
    public ActionResult UploadSliderImage(string urlname)
    {
      string URL = urlname;
        ....
      cmd.Parameters.AddWithValue("@URLPath", URL);
    }
    

    【讨论】:

      猜你喜欢
      • 2018-01-02
      • 1970-01-01
      • 1970-01-01
      • 2019-04-28
      • 2014-12-19
      • 2017-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多