私はこのCombine several similar SELECT-expressions into a single expressionと非常によく似た何かを実装したいと思いますが、私の場合はコードが機能しません。式を組み合わせて選択
2つのkeySelectors(プロパティ)を渡したいと思います。それらを組み合わせてEF 4.1 selectクエリに使用したいと思います。ただ、一例として
は、以下のコードを参照してください。
public class Category
{
public int CategoryId { get; set; }
[Required(ErrorMessage = "Name required.")]
[StringLength(25, ErrorMessage = "Must be less than 25 characters.")]
public string Name { get; set; }
public string Description { get; set; }
public DateTime? CreateDateTime { get; set; }
}
public class SampleContext : DbContext
{
public SampleContext() : base("Sketch7.Sample") { }
public DbSet<Category> Categories { get; set; }
}
public static class Repository
{
public Dictionary<TKey, TKeyValue> GetKeyValue<TKey, TKeyValue>(Expression<Func<TEntity, TKey>> keySelector, Expression<Func<TEntity, TKeyValue>> valueKeySelector)
{
var combined = //ToDo Select Combine here...
SampleContext db = new SampleContext();
var result = db.Categories.Select(combined);
...
return dictionary;
}
}
使い方
public void GetKeyValueTest()
{
Repository.GetKeyValue(x => x.Id , x => x.Name);
}
は、誰も私を助けてくださいことができます!あなたがこれを行うことができます
「私の場合はコードが機能しません」エラーの説明は何ですか? – ebb
私はあなたがよりよく理解でき、自分のシナリオをテストできるようにコードを更新しました。 (私はそのサンプルをテストしませんでしたが、うまくいくはずです)。ありがとうございます –