【问题标题】:Joined tables and databound controls; how would I bind my image controls so they will be bound to different images?连接表和数据绑定控件;我将如何绑定我的图像控件,以便将它们绑定到不同的图像?
【发布时间】:2015-01-20 04:32:03
【问题描述】:

我不知道如何准确地表达这个问题,如果这对你们来说听起来有点奇怪,很抱歉。这是my question about joined tables and table aliases 的后续,只是这次我的问题是 ASP.NET 标记。

正如我在上一个问题中所说,我正在为游戏 Doodle Creatures 制作一个作弊页面。我有一个 Select 语句,它连接了两个图像目录 - Animals 和 Genes - 以显示如下所示的图像。该脚本现在可以工作了,但我的一个图像绑定是错误的。

以下是前五种组合:

  • 海鸥 + 大 = 信天翁,
  • 蛇 + 大 = 蟒蛇,
  • 黄蜂 + 小 = 蚂蚁,
  • 牛+快=羚羊,和
  • 蚂蚁 + 小 = 蚜虫

以下是现在的组合:

  • 信天翁+大=信天翁,
  • Anaconda + Big = Anaconda,
  • 蚂蚁 + 小 = 蚂蚁,
  • 羚羊+快=羚羊,和
  • 蚜虫 + 小 = 蚜虫。

    ' SelectCommand="SELECT * FROM [CreatureCombos] INNER JOIN [动物] AS Animal1 ON [CreatureCombos].[NewCreatureID] = Animal1.[AnimalId] INNER JOIN [动物] AS Animal2 ON [CreatureCombos].[ComboAnimalID] = Animal2 .[AnimalId] INNER JOIN [Genes] ON [CreatureCombos].[ComboGeneID] = [Genes].[GeneId];">

    ' 宽度="25%" />+' 宽度="25%" />=' 宽度="25%" />

有什么建议吗?

【问题讨论】:

    标签: asp.net sql-server databound


    【解决方案1】:

    我认为您的问题与 SELECT * 有关 - 您的查询指定了两次 Animals 表,并且 select 正在返回每个表的每个字段,因此您可能会得到类似...

    • AnimalId(来自 Animal1)
    • AnimalImage(来自 Animal1)
    • AnimalId(来自 Animal2)
    • AnimalImage(来自 Animal2)
    • ComboAnimalId(来自 CreatureCombos)
    • ...

    我不确定Bind("AnimalImage") 最终如何选择AnimalImage 字段的哪个实例,但我敢打赌SELECT * 是罪魁祸首。

    而不是SELECT *,准确指定您需要获取的字段,并确保每个字段名称在您的结果集中只出现一次:

    SELECT 
         Animal1.AnimalImage AS AnimalImage1
        ,Animal2.AnimalImage AS AnimalImage2
    ...
    

    然后,当您想要来自Animal1 表的图像时,您可以Bind("AnimalImage1"),当您想要来自Animal2 表的图像时,您可以AnimalImage2

    【讨论】:

    • 我尝试了几次,但我成功了。我的 SQL 最终看起来像这样:'SELECT [Animal1].[AnimalImage] AS AnimalImage1, [Animal2].[AnimalImage] AS AnimalImage2, [Genes].[GeneImg] FROM [CreatureCombos] INNER JOIN [Animals] AS Animal1 ON [ CreatureCombos].[NewCreatureID] = Animal1.[AnimalId] INNER JOIN [Animals] AS Animal2 ON [CreatureCombos].[ComboAnimalID] = Animal2 .[AnimalId] INNER JOIN [Genes] ON [CreatureCombos].[ComboGeneID] = [Genes] .[基因ID];'非常感谢你的帮助! :-D
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-30
    • 2015-01-10
    • 1970-01-01
    • 2013-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多