Skip to main content
 首页 » 编程设计

c#之ASP.NET:如何在不写用户名的情况下将最新的新闻和杂志添加到 Web 应用程序

2024年01月11日33rubylouvre

我正在开发一个网络应用程序,使管理员能够添加新的和时事通讯。为了添加新闻,我在数据库中有一个名为新闻的表,其中包含:NewsID、NewsTitle、NewsDescription、Username。 此外,对于时事通讯,管理员将上传 ma。为此,我创建了一个包含 MagazineID、MagazineTitle、Url、用户名的表

顺便说一句,其中每一个中的用户名列都是 Users 表的外键。

现在我有两个问题: 为了添加新闻,我使用 ListView 并且除用户名列外一切正常。我想要的只是让用户能够填写两列:NewsTitle 和 NewsDescription。并且他的用户名应该会自动添加,但是该怎么做呢?

为了添加新闻,我使用了以下 sql 命令:

DeleteCommand="DELETE FROM [News] WHERE [NewsID] = @NewsID"  
 
InsertCommand="INSERT INTO [News] ([NewsTitle], [NewsDesc]) 
               VALUES (@NewsTitle, @NewsDesc)"  
 
SelectCommand="SELECT News.NewsID, News.NewsTitle, News.NewsDesc, News.Username 
               FROM News 
               INNER JOIN employee ON News.Username = employee.Username"  
 
UpdateCommand="UPDATE [News] 
               SET [NewsTitle] = @NewsTitle 
                  , [NewsDesc] = @NewsDesc 
               WHERE [NewsID] = @NewsID"> 

对于杂志,我也想使用 ListView 并让用户能够放置标题和上传杂志。我的问题是如何将 UploadFile 控件放在 ListView 中。

请您参考如下方法:

您可以将插入/更新参数值设置为当前 HttpContext 用户属性的名称属性。该值是登录用户的用户名。 MSDN reference

但是,用户名可能会更改,您最好保存一个 ID(最好是 int 数据类型)并将其设置为用户表中用户 ID 列的外键。