我试图创建维护页面,管理员可以创建/修改/删除的年龄范围将其显示在页面上为客户选择他们的年龄范围进行编程。如何与年龄(或任何其他)范围
年龄范围
1-20,
21-40,
41-60,
61-80,
81-100
允许进行修正的值和删除,但
所以基于所述下面条目上述不能存在
2-30 - falls within a range or
22- 30 - falls within a range etc etc
在首位的范围不能重叠或存在
到目前为止,我有一些代码来检查范围是否存在
IEnumerable<AgeRange> ar = from a in myDataContext.AgeRanges.Where(aa => aa.MinAge <= NewAge.MinAge && aa.MaxAge >= NewAge.MinAge) select a;
完全测试,但到目前为止,似乎这样的伎俩。所以我添加了删除功能。如果我删除范围41-60,那么我有一套新的问题。
如果我添加新条目42 - 59则客户不能选择任何范围,如果他们的年龄是41或者60上面的代码不会发现上述范围时,将允许它来保存。所以在这个例子中的修正范围将是
1-20
21-40 - Customer is 41 so they cant select this option
42-59 - Customer is 41 so they cant select this option either. If the customer is 60 cant select this option
61-80 - If the customer is 60 cant select this option either.
81-100
我想我会有更新现有的范围类似的问题。
是否有一个简单的方法来做到这一点,或者我可以使用或任何其他的想法适当的控制?
谢谢
既然它没有意义,允许差距,你可能重新设计这个存储停止,而不是范围。例如, {20,40,60} =>自动表示1-20,21-40,41-60,> = 61。 – KekuSemau
完全像Keku说的。这是一个设计问题,不是一个真正的编程问题。改变用户界面只接受停止,用户永远不会有年龄差距的问题。 –
“停止”是什么意思? – Computer