自定义SqlDataSource以存储部分字符串

本文关键字:字符串 存储部 SqlDataSource 自定义 | 更新日期: 2023-09-27 18:00:53

我正在使用ASP.Net WebForms中的UpdatePanel上传图像。我将Image.ImageUrl设置为映像的完整虚拟路径(/images/news/filenname.jpg(,但我只想将文件名保存在数据库中(filename.jpg(。如何将SqlDataSource自定义为只使用部分URL?

<asp:SqlDataSource 
  ID="SqlDataSourceNews" 
  runat="server" 
  ConnectionString="<%$ ConnectionStrings:connectionString %>" 
  UpdateCommand="UPDATE [foo] SET [pic] = @pic WHERE [id] = @id">
   <UpdateParameters>
      <asp:Parameter Name="pic" Type="String" />
   </UpdateParameters>
   <InsertParameters>
      <asp:Parameter Name="pic" Type="String" />
    </InsertParameters>
 </asp:SqlDataSource>

自定义SqlDataSource以存储部分字符串

您可以在page_load上设置更新参数,并使用子字符串函数从完整的url中只获取文件名:

protected void Buton_Click(object sender, EventArgs e)
{
        SqlDataSource1.UpdateParameters["pic"].DefaultValue = "string fetched from substring method";
        SqlDataSource1.Update();
}