-5
public String[][] GetAllItems() 
    {
        FoodCityData.ShoppingBuddyEntities fdContext = new FoodCityData.ShoppingBuddyEntities();

        IQueryable<Item> Query =
       from c in fdContext.Item
       select c;

        List<Item> AllfNames = Query.ToList();
        int arrayZise = AllfNames.Count;
        String[,] xx = new String[arrayZise,2];
        int i = 0;
        int j = 0;
        foreach(Item x in AllfNames)
        {

                xx[i,0] = x.ItemName.ToString();
                xx[i, 1] = x.ItemPrice.ToString();
                i++;

        }

        return xx[2,2];  // how do i write return type?
    }

我在此代码段返回类型中遇到错误。我可以知道如何正确编写此方法吗?

4

4 回答 4

1

你有Jagged Array返回类型,你需要返回二维Rrectangular Array,你可以像这样返回二维数组。

public String[,] GetAllItems() 
{
    //your code 
    String[,] xx = new String[arrayZise,2];
    //your code 
    return xx;    
}
于 2013-04-03T05:58:29.763 回答
1

您的方法假设返回锯齿状数组,而您试图返回多维数组

将您的方法签名修改为:

public String[,] GetAllItems() 

目前您的方法返回一个字符串,这就是错误的原因。

于 2013-04-03T05:59:02.657 回答
0

您正在返回 astring但您的返回类型是 a string[][]。我认为您想要做的是返回 a string[,]

public string[,] GetAllItems() 
{
    ...
    return xx;
}
于 2013-04-03T05:59:11.953 回答
0

您的方法返回类型是锯齿状数组,并且由于您xx[2,2]是 a string,因此您的方法返回 simple string,这就是您收到错误的原因。

只需返回两个维度数组即可

public String[,] GetAllItems() 
{
  .....
  return xx[2,2];    
}
于 2013-04-03T06:00:34.863 回答