을 제공 x.propertyX는 잘 작동 '은'객체 '에 정의되어 있지 않습니다.액세스 속성은 다음 샘플에서는 RuntimeBinderException
Program 클래스 (아래 참조)와 Class1 (표시되지 않음)의 CreateDynamic 메서드는 동일하지만 Class1은 Program과 다른 프로젝트에 있습니다. Class1을 프로그램의 프로젝트로 옮기면 모든 것이 잘 작동합니다.
class Program
{
public static object CreateDynamic()
{
return new { propertyX = "asdf" };
}
static void Main(string[] args)
{
dynamic x = CreateDynamic();
Console.WriteLine(x.propertyX);
dynamic y = Class1.CreateDynamic();
Console.WriteLine(y.propertyX);
익명 형식이 동적 유형으로 dll에서 작동하도록하려면 무엇이 필요합니까? 그렇지 않습니다.
는 업데이트 : FWIW, 난 주위에 얻을 수 알아 낸 그
new { key1 = val1, key2 = val2 }
과 비교했을 때, 그때 동적 '캐스팅',하지만 ExpandoObjects만큼 잘 인스턴스화하지 있습니다 ExpandoObjects를 사용하여 익명 유형이 제공하는 스타일.
익명 형식만큼 확장 인스턴스를 생성 할 수는 없지만 http://stackoverflow.com/questions/6469224/expandoobject-anonymous-types-and-razor/7434036#7434036 – jbtule