Я создал загрузчик изображений, используя asp.net mvc, который отправляет изображения в базу данных. но я хочу добавить вход для отправки связанных URL-адреса в БД SQL Server.
для раздела просмотра я определил два входа, как показано ниже:
<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
Спасибо ...