webForumDet fria alternativet

slå ihop två koumner till en droplist

.NET

4 svar · 520 visningar · startad av annasmurf

Medlem sedan mars 2006237 inlägg
Frågan#1

om jag har dennna fråga och sedan vill visa "cityName+'-'+arenaName as arenaName" i en droplist hur gör jag då, jag får inte det att funka den säger att det inte går att binda detta

select arenaID,  cityName+'-'+arenaName as arenaName
from arena, city 
where arena.cityID=city.cityID

jag vill göra så här

((DropDownList)e.Item.FindControl("DropDownListCity")).DataSource = ObjectDataSourceCity;
        ((DropDownList)e.Item.FindControl("DropDownListCity")).DataBind();

        ((DropDownList)e.Item.FindControl("DropDownListCity")).SelectedValue = ((DataRowView)e.Item.DataItem).Row["arenaID"].ToString();

men då säger det
Exception has been thrown by the target of an invocation.

Medlem sedan feb. 2005280 inlägg
#2

Förstår inte, vill se mer kod och sammanhang

Medlem sedan mars 2006237 inlägg
#3

jo jag har två kolumner i databasen som är city och arena, jag vill att dessa ska visas i samma droplist, typ stockholm-Globen och stockholm-konserthus tex

Medlem sedan okt. 2007446 inlägg
#4

jag kan sätta en slant på att det INTE är själva sammanslagningen av kolumnerna som gör att du inte kan binda datan till din dropdownlist.
Dock är jag lite osäker på SQL-syntaxen för att slå samman fält eftersom du inte nämner vad det är för databas du kör mot

Som freguz säger, lite mer kod än det där skulle faktiskt underlätta felsökningen. Jag antar att det är en "OnItemDatabound" eller "ItemCreated" metod. E.Item säger inget om vad det är för typ av item, är det en repeater eller en gridview?

någonting som däremot ser jäkligt udda ut är:
...DownListCity")).DataSource = ObjectDataSourceCity;
jag tolkar det där som att du har en datasourcekontroll i din aspx-sida
i så fall skall du väl binda den med DataSourceID = ObjectDataSourceCity;

om jag inte är helt fel ute så skall det dessutom gå att sätta datasourceID direkt i din dropdownlist, även om den ligger i tex en editItemTemplate i en Gridview.
Du kan även sätta selectedvalue direkt där (även om intellisensen ibland inte upplyser om det)

Medlem sedan mars 2006237 inlägg
#5

jag hade gjort rätt, det vara bara att ett värde i databasen inte tillåte null, så jag var tvungen att ta med den i min sql-fråga

248 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)