【发布时间】:2016-03-03 22:09:05
【问题描述】:
我只是好奇这是否可以实现:我目前遇到了一个问题,我使用控制器在类中设置和获取数据,这是通过处理程序端的方法和实例完成的。
我只是想知道,因为对于您的项目所包含的每个属性,执行 public string x { get; set; } 可能会变得非常冗长。
有没有办法让我在一个班级里实现这种意识形态?
public core Array[] (
Option1 => string Array[] (
Name => 'example'
),
Option2 => String Array[] (
Name => 'example2'
) { set; get; }
);
当然,这只是一个理论,并不是确切的解决方案。我想知道我是否会:
1) 将数据附加到索引时需要一个控制器。
2)需要实例化控制器处理的类,或者我是否可以通过主类方法来实现。
3) 需要一个多维数组或列表。
我目前的解决方案是冗长的,并且由于核心站点使用大量数据,它的响应随着添加的每个功能而下降。
任何人都可以参考任何基础设施参考资料,或者可能介绍一下如何使用这种意识形态实际分配属性吗?
提前谢谢你。
编辑:我的意思是这样的(PHP):
$example = array (
'location1' => array(
'location_id' => 1
),
'location2' => array(
'location_id' => 2
)
);
现在可以通过以下方式更轻松地处理数据:
foreach($example as $k=>$v){ // todo: handle }
所以这里 $k 成为您的数组名称(即可以是名称、地址),而 $v 成为您的嵌套数组,使数据更易于处理。
【问题讨论】:
-
输入
prop然后按tab -
我是
C#的新手,如果这个问题没有得到最好的描述,我深表歉意。我不明白你的评论指的是什么?不过,感谢您的输入,@dotctor -
@KyleE4K:“更短的代码”和“更简单的代码”并不总是同义词。这在 PHP 中确实有意义,但在 C# 中却没有那么大,因为它是一种非常不同的语言。
-
@KyleE4K:属性本身和这些属性的类型是两个不同的东西。在 C# 和 Java 等语言中,使用无类型数组存储类结构是一个众所周知的坏主意。存在专门用于避免这样做的重构模式。
-
@KyleE4K:它并没有真正回答这个问题,我怀疑这是因为这个问题与真正要解决的问题无关。大概您在 C# 中有一些您认为不是“干净”或以某种方式可维护的代码,并且您想让它“更好”。您已经假设了一种基于不同语言的方法,但这种方法在这里没有多大意义。虽然代码审查本身在这里是题外话,但您可能会从 Martin Fowler 的 Refactoring Patterns 或 Robert Martin 的“Clean Code”一书中找到重构 C# 代码的一些帮助。
标签: c#