2017-12-05 61 views
0

C#APIを使用してコンテストデータを返しています。リストがあり、これをAPIからの出力として返します。APIから返されたリストがアルファベット順に配置されている理由を教えてください。

API Output

APIのURL:この出力でAPI Url

リストがアルファベット順にソートされorder.Iソートせずに、下記のコンテストクラス順に一覧したいです。

コンテストクラス:

public class Contest 
{ 
    public int ContestID { get; set; } 
    public string MovieName { get; set; } 
    public string MovieImage { get; set; } 
    public string RegionalMovieName{get;set;} 
    public string Question { get; set; } 
    public string Answer1 { get; set; } 
    public string Answer2 { get; set; } 
    public string Answer3 { get; set; } 
    public string Ad1ImageUrl { get; set; } 
    public string Ad2ImageUrl { get; set; } 
    public string Ad3ImageUrl { get; set; } 
    public string AdText { get; set; } 
    public DateTime? StartDate { get; set; } 
    public DateTime? EndDate { get; set; } 
} 

出力リストの上のクラスを使用します。

コントローラコード:

public class ContestController : ApiController 
{ 
    MMProvider.ContestProvider Provider = new MMProvider.ContestProvider(); 
    [HttpGet] 
    [Route("GetContestDetails")] 
    public IHttpActionResult GetContestDetail(string ContestId) 
    { 
     Contest _contest = new Contest(); 
     if (!string.IsNullOrEmpty(ContestId.ToString())) 
     { 
      List<Contest> ContestDetailsList = Provider.GetContestDetail(ContestId); 
       return Ok(ContestDetailsList); 
     } 
     else 
     { 
      return NotFound(); 
     } 
    } 

}

のStoredProcedure:

ALTER PROCEDURE [dbo].[Proc_GetMblContest] 
@ContestID INT 
AS 
BEGIN 

IF EXISTS (SELECT COUNT(ContestID) FROM Mbl_Contest WHERE ContestID = @ContestID AND Status='A') 
BEGIN 
    SELECT ContestID,MovieName,RegionalLanguage,MovieImage,Ad1ImageUrl,Ad2ImageUrl,Ad3ImageUrl,AdText,Question,Answer1,Answer2,Answer3,StartDate,EndDate FROM Mbl_Contest WHERE ContestID = @ContestID 
END 
END 
+0

はあなたが私たちを何をしたいですか何をする?推測? – Sefe

+0

あなたはどんな順序をしたいですか?それに応じてソートします。あなたはランダムにしたいですか?それをシャッフルしてください。 – lamandy

+0

私はコンテストのクラスオーダー – Girija

答えて

2

"クラス順位" のようなものはありません。 。クラスのメンバーはあなたがdefault serializers for WebApiを使用していると仮定すると、関係なく、あなたがそれらを入力するどのような順序、任意の内部順序なし

存在しない、あなたが欲しい注文を指定する必要があります。

[DataContract] 
public class Contest 
{ 
    [DataMember(Order = 0)] 
    public int ContestID { get; set; } 

    [DataMember(Order = 1)] 
    public string MovieName { get; set; } 

    [DataMember(Order = 2)] 
    public string MovieImage { get; set; } 

    [DataMember(Order = 3)] 
    public string RegionalMovieName{get;set;} 

    // ... the pattern should be clear 
} 
+0

Thnk uそんなに....その仕事....これは私が本当に欲しいものです。 – Girija

関連する問題