teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

インデント修正

2020/10/15 00:35

投稿

dekaaki
dekaaki

スコア292

answer CHANGED
@@ -2,28 +2,30 @@
2
2
  目的がいまいち伝わらないので的外れかもしれませんが...
3
3
  ```C#
4
4
  public class FreeClass {
5
- public string FreeProperty { get; set; }
5
+ public string FreeProperty { get; set; }
6
- }
6
+ }
7
7
 
8
- public class FreeManagerClass {
8
+ public class FreeManagerClass {
9
9
 
10
- private static Func<FreeClass, object> TargetProperty;
10
+ private static Func<FreeClass, object> TargetProperty;
11
11
 
12
+ public static void FromPropertyMethod(
12
- public static void FromPropertyMethod(System.Linq.Expressions.Expression<Func<FreeClass, object>> expression) {
13
+ System.Linq.Expressions.Expression<Func<FreeClass, object>> expression) {
13
- TargetProperty = expression.Compile();
14
- }
15
14
 
16
- // 値取得時には対象インスタンスを受け取って実行
17
- public object GetValue(FreeClass instance) {
18
- return TargetProperty.Invoke(instance);
15
+ TargetProperty = expression.Compile();
19
- }
16
+ }
20
- }
21
17
 
18
+ // 値取得時には対象インスタンスを受け取って実行
22
- public class UserClass {
19
+ public object GetValue(FreeClass instance) {
20
+ return TargetProperty.Invoke(instance);
21
+ }
22
+ }
23
23
 
24
- public void UseFromPropertyMethod() {
24
+ public class UserClass {
25
- FreeManagerClass.FromPropertyMethod(x => x.FreeProperty);
26
- }
27
25
 
26
+ public void UseFromPropertyMethod() {
27
+ FreeManagerClass.FromPropertyMethod(x => x.FreeProperty);
28
- }
28
+ }
29
+
30
+ }
29
31
  ```