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

質問編集履歴

3

追記の修正

2018/05/14 23:29

投稿

Anon_
Anon_

スコア334

title CHANGED
File without changes
body CHANGED
@@ -72,7 +72,7 @@
72
72
  }
73
73
  }
74
74
 
75
- public GetList(string lang, string page)
75
+ public dynamic GetList(string lang, string page)
76
76
  {
77
77
  switch (page)
78
78
  {

2

追記です

2018/05/14 23:29

投稿

Anon_
Anon_

スコア334

title CHANGED
File without changes
body CHANGED
@@ -28,4 +28,72 @@
28
28
  $btn1 = $data_arr[$lang]['fruit']['apple'];
29
29
 
30
30
  ?>
31
+ ```
32
+
33
+
34
+
35
+ 追記1
36
+
37
+ 頂いた意見を参考に下記の形で実装しようと試みましたが、変なところで躓いてしましました。
38
+ 下記クラスをnewしたときに各言語テキストをセットし、GetList()で取得という処理を行いのですが、switchのreturn data箇所でコンテキストが存在しませんというエラーがでてしまいます。
39
+ また、取得する側のコードのvar textdata2 = new TextData2("fruit");の箇所では下記画像のようなエラーがでてしまいますが原因が分からない状況です。
40
+
41
+ ![イメージ説明](ce42afc3bfb35dceb861e78e77797344.png)
42
+
43
+ ```ここに言語を入力
44
+
45
+   public class Fruit
46
+ {
47
+ public string lang { get; set; }
48
+ public string apple { get; set; }
49
+ public string banana { get; set; }
50
+ public string grape { get; set; }
51
+ }
52
+
53
+
54
+ public class TextData2
55
+ {
56
+
57
+ public List<Fruit> fruit_list;
58
+
59
+ public void Main(string page)
60
+ {
61
+ switch (page)
62
+ {
63
+ case "fruit":
64
+ fruit_list = new List<Fruit>()
65
+ {
66
+ new Fruit(){lang = "ja", apple = "りんご", banana = "ばなな", grape="ぶどう"},
67
+ new Fruit(){lang = "en", apple = "apple", banana = "banana", grape="grape"},
68
+ };
69
+ break;
70
+
71
+
72
+ }
73
+ }
74
+
75
+ public GetList(string lang, string page)
76
+ {
77
+ switch (page)
78
+ {
79
+ case "fruit":
80
+ var data = (from l in fruit_list
81
+ where l.lang == lang
82
+ select l).FirstOrDefault();
83
+ break;
84
+
85
+ }
86
+
87
+ return data;
88
+ }
89
+ }
90
+
91
+ ```
92
+
93
+
94
+ 下記は取得側のコード
95
+ ```ここに言語を入力
96
+ //取得側
97
+ var textdata2 = new TextData2("fruit");
98
+ var fruit_list = textdata2.GetList(lang, "fruit");
31
99
  ```

1

keyの修正

2018/05/14 09:34

投稿

Anon_
Anon_

スコア334

title CHANGED
File without changes
body CHANGED
@@ -12,20 +12,20 @@
12
12
  PHPで書くと下記の処理をC#で実装したいです
13
13
  ```PHP
14
14
  $data_arr['ja']['fruit'] = array(
15
- 'btn1' => 'りんご',
15
+ 'apple' => 'りんご',
16
- 'btn2' => 'ばなな',
16
+ 'banana' => 'ばなな',
17
- 'btn3' => 'ぶどう',
17
+ 'grape' => 'ぶどう',
18
18
  );
19
19
 
20
20
  $data_arr['en']['fruit'] = array(
21
- 'btn1' => 'apple',
21
+ 'apple' => 'apple',
22
- 'btn2' => 'banana',
22
+ 'banana' => 'banana',
23
- 'btn3' => 'grape',
23
+ 'grape' => 'grape',
24
24
  );
25
25
 
26
26
  //日本語で使用
27
27
  $lang = 'ja' //実際は使用言語を動的に取得
28
- $btn1 = $data_arr[$lang]['fruit']['btn1'];
28
+ $btn1 = $data_arr[$lang]['fruit']['apple'];
29
29
 
30
30
  ?>
31
31
  ```