C #: как определить метод расширения как «with» в F #?

F # имеет удобную функцию "with", например:

type Product = { Name:string; Price:int };;
let p = { Name="Test"; Price=42; };;
let p2 = { p with Name="Test2" };;

F # создало ключевое слово "with", поскольку типы записей по умолчанию неизменяемы.

Теперь, это можно ли определить подобное расширение в C #? кажется, это немного сложно, так как в C # я не уверен, как преобразовать строку

Name="Test2"

в делегат или выражение?

8
задан p.s.w.g 9 December 2013 в 02:46
поделиться