|登录 |注册

查看: 2127|回复: 5
打印 上一主题 下一主题

C# get property by name?

[复制链接]
~Zero
2011-4-25 03:07 PM
在 php 我可以这样做:
  1. $property_name = "id";
  2. echo $custom_class->{$property_name};
复制代码
然后 custom_class 的 id 会被 echo 出来。

那在 C# 办得到吗?要怎样?
宅男-兜着走
2011-4-25 03:48 PM
本帖最后由 宅男-兜着走 于 2011-4-25 03:51 PM 编辑

回复 1# ~Zero

   可以, 使用 Reflection。
http://www.csharp-examples.net/reflection-examples/
Super-Tomato
2011-4-25 04:49 PM
在 php 我可以这样做:然后 custom_class 的 id 会被 echo 出来。

那在 C# 办得到吗?要怎样?
~Zero 发表于 2011-4-25 03:07 PM



C# 應該可以使用 delegate 办到吧
~Zero
2011-4-26 10:11 AM
谢谢。reflection 可以。
http://www.vcskicks.com/properties.php
goodhermit95
2011-4-26 09:37 PM
原来有这样的东西,每次弄到我写code写到长长==
~Zero
2011-4-27 11:18 AM
本帖最后由 ~Zero 于 2011-4-27 11:19 AM 编辑

haha 我也是,因为接触到 php 了才发现到 php 的方便。
可以用一个 foreach loop 来 initialize 所有东西,
例如从 database column 或 $_POST items.
  1. foreach ($_POST as $key => $value) {
  2.      $object->{$key} = $value;
  3. }
复制代码
不需要
  1. $object->id = $_POST['id'];
  2. $object->name = $_POST['name'];
  3. $object->date = $_POST['date'];
  4. ......
复制代码
您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2026-1-1 06:27 AM , Processed in 0.092977 second(s), 26 queries .

Powered by Discuz! X2.5 © 2001-2012 Comsenz Inc.

本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved

Dedicated Server powered by iCore Technology Sdn. Bhd.

合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部