无法通过使用JSON和WebAPI列出五个最新消息的数据



我想使用JSON和WebAPI在列表框中列出五个最新消息。不知何故,它没有在listbox上显示任何数据

jQuery方法:

<script>
    function get_latest_messages(Namn) {
        // Handle your incomming data from the api
        function handleJson (messages) {
            // the data parameter is supposed to be your json
            for (var i = 0; i < messages.length; i++)  {
                $("#MessList").append(data[i].UIdFrom);
                $("#MessList").append(data[i].Text);
            }
        }
        // Call
        $.getJSON('http://localhost:51486/api/message/get?username=' + Namn, handleJson);
    }
</script>

列表箱消息显示在:

<div runat="server" id="SenastDiv">
    <asp:Label ID="Text" runat="server" Text="Dina fem senaste meddelanden"></asp:Label>
    <asp:ListBox ID="MessList" runat="server" Width="250 px"></asp:ListBox>
</div>

API控制器:

命名空间mvcapplication1.controllers

public class MessageController : Controller
{
    DALLager d = new DALLager();
    public IEnumerable<GetFiveLatest> Get(string username)
    {
        IEnumerable<GetFiveLatest> messages = d.getFiveLatest(username);
        return messages;
    }
}

数据层中的方法:

public List<GetFiveLatest> getFiveLatest(string userName)
{
    try
    {
        SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["InstabandDBEntities"].ConnectionString);
        conn.Open();
        Meddelande mess = new Meddelande();
        List<GetFiveLatest> lista = new List<GetFiveLatest>();
        SqlCommand cmd = new SqlCommand("SELECT TOP 5 UIdFrom, Text FROM Message WHERE UIdTo='" + userName + "'ORDER BY Text DESC", conn);
        SqlDataReader dataReader = cmd.ExecuteReader();
        while (dataReader.Read())
        {
            GetFiveLatest message = new GetFiveLatest();
            message.Text = (dataReader["Text"].ToString());
            message.UIdFrom = (dataReader["UIdFrom"].ToString());
            lista.Add(message);
        }
        conn.Close();
        return lista;
    }
    catch (Exception ex)
    {
        throw new Exception(exe = "Följande fel inträffade: " + ex.Message.ToString());
    }
}

您正在使用MVC Controller。您应该使用ApiController

最新更新