Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Помогите со структурой одностраничного Ajax-сайта

Автор вопроса: Vitor ReisОтветов: 1

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

Я делаю веб-сайт с музыкальным проигрывателем javascript, который нельзя прерывать каждый раз, когда пользователь переходит между страницами. Таким образом, сайт должен быть своего рода одной страницей, загружающей файлы ASPX с помощью AJAX.

Какую структуру я должен использовать для этого?

Если я использую мастер-страницу с проигрывателем и отдельными файлами aspx, смогу ли я загрузить эти файлы с помощью ajax?

Будем признательны за любую помощь со структурой или образцом ajax.

  • Будут ли на этих страницах какие-либо функции? Или просто статические текстовые страницы? Если это так, вы можете сохранить страницы в базе данных, а затем загрузить контент на главную страницу? Tim B James 10.03.2011
  • Можете ли вы иметь страницу с двумя iframe и выполнять всю навигацию в одном, оставив другой для запуска музыки? s_hewitt 10.03.2011
  • Да... у страниц есть некоторая функциональность, и я бы предпочел не использовать фреймы, если это возможно. Vitor Reis 11.03.2011

ajaxvisual-studio-2008

Ответы

Ответ 1 · рейтинг 1 · Kon

Я бы посоветовал вам использовать для этого MVC Framework. Затем вы можете легко вызывать методы действия контроллера через вызовы AJAX на стороне клиента. Вот упрощенный пример:

// jQuery AJAX call.
function getContacts() {
    $.ajax({
        type: 'get',
        url: '/Contacts/GetContacts',
        dataType: 'json',
        success: function (response) {
            var contacts = response;
        },
        error: function (e) {
            alert('oops!');
        }
    });
}


// Server-side.
public class ContactsController : Controller
{
    [HttpGet]
    public JsonResult GetContacts()
    {
        JsonResult result = new JsonResult { JsonRequestBehavior = JsonRequestBehavior.AllowGet };
        List<Contacts> contacts = DataAccess.GetContacts();
        result.Data = contacts;

        return result;
    }
}

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы