expression-trees

    1

    1答えて

    よく明らかです。私は表現でランタイムマジックをやります。私のユニットテストは例外をスローします。なぜなら、私がやっていることはかなり複雑で失敗することが明らかです。 どのように私はおそらく生成されたデリゲートをデバッグすることができませんので、回避策としてコンソールに例外を記録するtry-catchを挿入したいと思います。 私は例外変数にどのようにアクセスできるのか分かりません。変数はCatchB

    2

    1答えて

    拡張メソッドを使用して、自分のエンティティモデルからビューモデルに投影するのが好きです。これは、私のモデルのためのフェッチを上/下では意味しませんし、コードを素敵で読みやすいものにしています。予測にはネストされたモデルが含まれることがあり、それらのサブ予測を再利用したいと考えています。 は、私は次のような何かをできるようにしたい:実際の投影ため ctx.People.FiltersAndThing

    2

    1答えて

    私はIQueryable<>.Select()メソッドに渡す投影機能があります。 private static Expression<Func<VendorPrice, PriceItem>> GetPriceSelector(){ return e => new PriceItem { Id = e.Id, Price = Math.Round(e.Price,

    2

    2答えて

    動的な数の列に2つのDataTableを結合しようとしています。私は以下のコードまで行ってきました。問題は、結合のON文です。リスト "joinColumnNames"に含まれる列名の数に基づいて、この動的化を行う方法を教えてください。 私は何らかの種類の式ツリーを構築する必要があると考えていましたが、複数の結合列と各列のプロパティを持たないDataRowオブジェクトでこれを行う方法の例は見つかり

    3

    1答えて

    System.Linq.Expressions APIを使用してオブジェクトのリストからDataTableを作成するメソッドを作成しようとしていますが、式を逆コンパイルすると次のILを生成する方法がわかりません。typeof (int) IL_0000: nop IL_0001: ldtoken System.Int32 IL_0006: call System.Type.GetTyp

    0

    1答えて

    最後の選択時にどのように投影を達成できますか?文字列prop.Nameで定義されたプロパティをSeriesProjectionオブジェクトに選択する必要があります。 GroupByについては public override IQueryable<SeriesProjection> FilterOn(string column) { //Get metadata class proper

    0

    1答えて

    私はこれをよく理解していません。私はMethodCallExpressionを作成しようとしていますが、メソッドが期待する型で正確に呼び出すことができないことを示すランタイムエラーが発生していますか?私はかなりエクスプレッションツリーを初めて使っているので、私は後方に何かを持っていると確信していますが、私はこれをリードに適応しようとしています。 using System; using Syste

    4

    2答えて

    Entity FrameworkでOrderBy式を動的に作成する方法については、this answerを見てきました。しかし、私は動的なWhere式を構築したいと思います。 public IEnumerable<InventoryItem> GetAll(string filterBy, object value) { var results = new List<Inventory

    0

    2答えて

    私は考えがあり、それが機能するかどうかを知りたい。 プロパティを持つ単純なクラスがあり、式でアクセサーを生成したいと思います。 しかし、最終的に私はFunc<Test, string>を取得する必要がありますが、私はそれらを使用するときにタイプを知らない。 class Program { static void Main(string[] args) { Test

    2

    1答えて

    パラメータとして渡された動的メソッドデリゲートを調べるメソッドを作成する必要があります。しかし、私は表現木がその署名に関係なくどんな方法でも受け入れるよう強制することはできません。 これは(コンパイルされません:error CS0030: Cannot convert type 'method' to 'Delegate')私の方法である public void Examine<T>(Expres