2017-01-28 5 views
0

Я застрял, делая страницу списка на новом сайте.Webmatrix - отображение релевантных данных из объединенных таблиц SQL

У меня есть 2 таблицы в моей базе данных, Место и Location_Images с общим полем LOCATION_ID в каждом.

Я хотел создать список мест, где имя каждого местоположение в отображаются рядом связанных с изображений.

Вот мой код:

var db = Database.Open("StarterSite"); 
var selectCommand = "SELECT * FROM Location"; 
var searchTerm = ""; 
var selectedPlace = db.Query(selectCommand, searchTerm); 

var selectImagesCommand = "SELECT loc_image_url FROM Location_Images JOIN Location ON Location_Images.location_id=Location.location_id"; 
var selectImagesTerm = ""; 
var selectedPlacePics = db.Query(selectImagesCommand, selectImagesTerm); 


@foreach(var row in selectedPlace) 
{ 
    @row.location_name; 

    foreach(var pic in selectedPlacePics) 
    { 
     <img src="img/locations/@pic.loc_image_url" alt=".">; 
    }; 

} 

На данном этапе все изображения показаны в любом месте.

Любая помощь была бы принята с благодарностью.

+0

Извините, вы получаете все адреса прямо, если это не то, что вы хотите, объясните немного больше. – Saravanan

+0

Я получаю каждое изображение в базе данных, отображаемое под каждым местоположением, а не только те, которые ссылаются на конкретное местоположение. – Mark

ответ

0

Вы можете использовать один запрос для этого, как:

SELECT Location .*, Location_Images.loc_image_url FROM Location leftjoin Location_Images ON Location_Images.location_id=Location.location_id"; 

, если вы хотите, чтобы некоторые фильтры, то вы можете использовать где положение.

+0

Как я могу это использовать? Использование его для selectCommand не влияет. Используя его для selectImagesCommand приводит к непризнанию Location_Images (ошибка токена). – Mark

Смежные вопросы