-1

I'm using a repository for my models like this

public IEnumerable<object> GetDetailList(int userId, int page, int rp, string sortname, string sortorder, ref int num, ref int numpg)
{
    var details = (from access in context.erp_sec_companyaccesses
                   join company in context.erp_maint_companies on Convert.ToInt32(access.company_id) equals company.company_id
                   where access.user_id == userId
                   select new
                   {
                       pkey = access.company_access_id,
                       company_access_id = access.company_access_id,
                       company_code = company.company_code,
                       company_name = company.company_name,
                       company_id = company.company_id
                   });

    num = details.Count();
    numpg = (int)Math.Ceiling((float)(num / rp));

    details = details.OrderBy(sortname+" "+sortorder).Skip(page * rp).Take(rp);

    return details;
}

But I'm struggling to upcast the IEnumerable<object> returned to the controller. Is there any alternative than this ?

Update : I give up up-casting, I'll send a typed object instead of anonymous, thanks everybody


mod_rewrite rule to append index.html if not present

What would be the mod_rewrite rule to append index.html to any URL that ends with a forward slash? The rule should preserve any query string present. I can't use the DirectoryIndex directive because the index.html files don't physically exist on the file system, but are required by the underlying website framework.

Some example URLs and the desired results are shown below:

http://example.com/                   -> http://example.com/index.html
http://example.com/?a=1               -> http://example.com/index.html?a=1
http://example.com/foo/               -> http://example.com/foo/index.html
http://example.com/foo/?b=2           -> http://example.com/foo/index.html?b=2
http://example.com/foo/index.html     -> http://example.com/foo/index.html
http://example.com/foo/index.html?c=3 -> http://example.com/foo/index.html?c=3
4

3 に答える 3

0

ジェネリックを使用して、必要なオブジェクト型をメソッドに渡して、これを返さないのはなぜですか?

于 2012-09-14T09:25:20.540 に答える
0

匿名オブジェクトを渡してはいけません。昨日やってみましたが、簡単な解決策が見つかりませんでした。したがって、最善の方法は、データ用に別のクラスを作成することです。

Skeet からの回答は次のとおりです。匿名型をメソッドに渡すことができないのはなぜですか?

于 2012-09-14T09:16:30.590 に答える
0

おそらく具体的な型を作成して、関数から ではなくDetailsを返したいと思います。IEnumerable<Details>IEnumerable<object>

コードの他の場所で関数内に作成された匿名型のフィールドにアクセスしたいと思われるため、これを想定しています。

于 2012-09-14T09:16:44.810 に答える