0

我有一个连接到 mssql 数据库并返回故事列表的函数——这些故事放在超链接中。这是我的代码:

public void getSocialStories()
{
    string user = getSelectedUser();
    List<SocialStory> stories = new List<SocialStory>();
    stories = functions.getSocialStories(user);

    foreach (SocialStory story in stories)
    {
        HyperLink storyLink = new HyperLink();
        storyLink.NavigateUrl = "http://google.com";

        storyLink.Text = story.Social_story_name;
        ph.Controls.Add(new LiteralControl("<br />"));
        ph.Controls.Add(storyLink);
    }
}

到目前为止一切顺利,但现在我想在单击超链接时调用一个函数,该函数要求数据库返回该故事的相应图片。我需要做的就是调用function(story_id). MyList<SocialStory>包含具有story_id参数的 SocialStory 对象。如何调用story_id作为参数的函数?

4

2 回答 2

2

您可以使用动态处理程序 (ashx) 在标签内显示图像。所以你需要像这样编写文字控制:

<a href="yourStoryLink"><img src="StoryImageHandler.ashx?storyId=yourStoryId" /></a>

检查ASP.NET ASHX 处理程序以获取创建 StoryImageHandler.ashx 的基本说明。

于 2012-12-17T10:12:39.020 回答
1

客户端没有 C#,因此您需要进行 AJAX 调用或以其他方式查询服务器。

如何通过传递参数从客户端调用服务器端函数?:Microsoft ASP.NET 官方论坛列出了一些可能的解决方案:

它们都基于相同的原则:客户端发送第二个请求,该请求调用一段独立的代码。它们也被认为是 ASMX 的更轻的替代品。

于 2012-12-17T10:12:12.783 回答