는 다음 내가이의 라인을 따라 뭔가 (C#의 의사 코드)를 수행 할 C#을?자바 스크립트와 같은 익명 함수는
var greeting = "Hello" + function()
{
return " World";
}() + "!";
에서 할 수 있습니다 그 청크 논리를 별도의 방법으로 이동하는 대신 일부 논리의 인라인 범위 지정을 구현하려고합니다.
는 다음 내가이의 라인을 따라 뭔가 (C#의 의사 코드)를 수행 할 C#을?자바 스크립트와 같은 익명 함수는
var greeting = "Hello" + function()
{
return " World";
}() + "!";
에서 할 수 있습니다 그 청크 논리를 별도의 방법으로 이동하는 대신 일부 논리의 인라인 범위 지정을 구현하려고합니다.
익명 형식을 사용하는 경우 익명 메서드 또는 람다 식을 명시 적으로 캐스팅해야합니다. 형식이 이미 알려진 속성에 할당하는 경우에는 그렇지 않습니다. 예 :
var cell = new TableCell { CssClass = "", Text = (Func<string>) (() =>
{
return "logic goes here";
})};
다소 어색하지만 작동합니다.
네, 확실히 이런 익명의 함수를 사용할 수 있습니다. 텍스트를 검색 할 때 명시 적으로 호출해야합니다, 당신을 마음 :
Console.WriteLine("{0}: {1}", cell.CssClass, cell.Text());
var greeting = "Hello" + new Func<String>(() => " World")() + "!";
곧에 넣어 더 자세한 자신을 답변 :
var tr = new TableRow { CssClass = "" };
tr.Cells.AddRange(new []
{
new TableCell { CssClass = "", Text = "Hello" },
new TableCell { CssClass = "", Text = new Func<String>(() =>
{
// logic goes here
return "";
})()}
});
내 질문에 업데이트되었습니다. – roosteronacid
ㅎ, 아주 잘됐다! –
당신의 대답이 나를 도왔지만 Jon Skeet의 대답만큼 좋은 질문은 아닙니다. – roosteronacid