小编o.k*_*k.w的帖子

枚举命名惯例 - 复数

我问这个问题,尽管在枚举和匹配属性的C#命名约定中读过类似但不完全正确的内容

我发现我倾向于将枚举命名为复数,然后将它们用作单数,例如:

public enum EntityTypes {
  Type1, Type2
}

public class SomeClass {
  /*
    some codes
  */

  public EntityTypes EntityType {get; set;}

}
Run Code Online (Sandbox Code Playgroud)

当然它有效,这是我的风格,但任何人都可以找到这种惯例的潜在问题吗?我确实有一个"丑陋"的命名与"状态"一词:

public enum OrderStatuses {
  Pending, Fulfilled, Error, Blah, Blah
}

public class SomeClass {
  /*
    some codes
  */

  public OrderStatuses OrderStatus {get; set;}

}
Run Code Online (Sandbox Code Playgroud)

附加信息:也许我的问题不够明确.在命名我定义的枚举类型的变量时,我经常要努力思考.我知道最佳实践,但它无助于简化命名这些变量的工作.

我不可能将我的所有枚举属性(比如"状态")公开为"MyStatus".

我的问题:任何人都可以找到上述惯例的潜在问题吗?这不是最佳做法.

问题改写:

嗯,我想我应该这样问这个问题:有人能用一种很好的通用方法来命名枚举类型,这样在使用时,枚举"实例"的命名会非常简单吗?

.net c# enums naming-conventions plural

249
推荐指数
8
解决办法
12万
查看次数

Hibernate使用ID查询外键字段

例如,我有两个实体:Employee和Address.在这些enitities中,Employee有一个外键AddressID引用Address上的ID列.在Java域对象中,Hibernate使用Address对象字段很好地包装了forgein键整数字段.但是现在,我如何使用某个AddressID查询Employee?

我试图创建一个表别名.这似乎有效,但它相当尴尬.

我也尝试过这样的事情:

criteria.add(restriction.eq("TheAddressObjectFieldName", 123);
Run Code Online (Sandbox Code Playgroud)

它工作一段时间但并不总是.我不确定这是正确的方法,但我希望它能一直这样.

那么在hibernate中查询外键列的正确方法是什么?

hibernate criteria

39
推荐指数
2
解决办法
4万
查看次数

如何在javascript中检测/跟踪回发?

如何在javascript中检测/跟踪/检查回发(例如在asp.net Page.isPostBack()中)?有什么建议吗?

javascript asp.net postback

24
推荐指数
5
解决办法
7万
查看次数

ajax问题 - 在萤火虫中200 OK,但没有响应体的红色消息

我看到了与跨域相关的小ajax问题.

在localmachine上我用一些ajax创建了html示例:在注册文本字段中用户类型'username',在每次击键时ajax将它发送到本地Tomcat,其中servlet检查该用户名是否已被使用并发送'take'响应.

在localhost上没问题.只要我输入'username',servlet就会发送'take'响应,浏览器会显示它.

但是,当我在远程机器(在远程网络上有一些免费托管)上放置带有ajax的测试html页面时,我会在我的localhost Tomcat上发送验证请求,建立连接,在Tomcat控制台中我看到请求即将发生,并且在Mozzila中的firebug中这是控制台输出继电器:

GET http://89.216.182.25:8080/Dinamicki1/UsernameServlet?username=zik 200 OK
Run Code Online (Sandbox Code Playgroud)

...但是在响应选项卡中没有'采取'servlet响应,并且firebug中的消息是红色的

所以服务器通信良好,没有防火墙问题,响应是200 OK
但响应体是空的.

任何想法萤火虫的这些红色信息是什么?

非常感谢你提前.

如果有人可以为java推荐一些严肃的ajax教程,将非常感谢:)

java ajax firebug cross-domain

21
推荐指数
2
解决办法
2万
查看次数

SQL:按电子邮件域名排序

什么是使用DOMAIN名称片段对具有一列电子邮件地址的表进行排序的最短和/或最有效的SQL语句?

这基本上忽略了电子邮件地址中"@"之前的任何内容,并且不区分大小写.让我们忽略这个国际化的域名.

目标是:mySQL,MSSQL,Oracle

来自的样本数据 TABLE1

id   name           email 
------------------------------------------
 1   John Doe       johndoe@domain.com
 2   Jane Doe       janedoe@helloworld.com
 3   Ali Baba       ali@babaland.com
 4   Foo Bar        foo@worldof.bar.net
 5   Tarrack Ocama  me@am-no-president.org

通过电子邮件订购
SELECT * FROM TABLE1 ORDER BY EMAIL ASC

id   name           email 
------------------------------------------
 3   Ali Baba       ali@babaland.com
 4   Foo Bar        foo@worldof.bar.net
 2   Jane Doe       janedoe@helloworld.com
 1   John Doe       johndoe@domain.com
 5   Tarrack Ocama  me@am-no-president.org

按域名排序
SELECT * FROM TABLE1 ORDER BY ?????? ASC

id   name           email 
------------------------------------------
 5   Tarrack Ocama  me@am-no-president.org
 3 …

sql sorting email sql-order-by domain-name

19
推荐指数
3
解决办法
2万
查看次数

"出生日期"验证:你会走多远/多远?

关于表单验证,我很肛门.因此,在我当前的一个工作申请表项目(平台/语言在这种情况下是中立的)中为"出生数据"(DOB)字段创建验证器时,我想要一些东西来防止"朋克"输入.

我使用了日期选择器,并将最长日期限制为从当天起的XX年.XX对于这种情况有意义,因为任何年轻人都不应该申请这份工作.

验证错误消息是:您似乎太年轻了.

然后我开始冒险.怎么样?

如果DOB超过120年前,请留言:"你不能那么老!!!"

如果将来有DOB,请留言:"你一定是在开玩笑,你还没出生!"

最后,我部署了没有最后2,对我的严肃客户来说太厚颜无耻了.

我想知道你们有多远/多少去验证DOB字段以获得良好的可用性(或幽默感)?

同样的日期,如"结婚日期","毕业年份"等...

PS:当我即将提交这篇文章时,标题文本框下面有一个警告:"你问的问题似乎是主观的,可能会被关闭." 手指交叉.

补充一点: 我很惊讶一些/大多数人都不太关心验证.我在这里重复一下我的评论:

如果用户错误地输入了日期(非常明显),无论是出于意图还是出错; 这是验证者捕捉它的目的之一.当数据进入系统时,站点所有者只知道输入错误,他/她在不询问用户的情况下不知道实际值.如果这个领域非常重要,那将不是一个漂亮的场景.

validation usability date date-of-birth

14
推荐指数
5
解决办法
1万
查看次数

如何在数据绑定控件中使用Eval调用扩展方法

我在int类型上有一个简单的扩展方法,所以我可以执行以下操作:

string timeLength = 61.ToTime() // timeLength will be "1:01"
Run Code Online (Sandbox Code Playgroud)

这在代码中很有用,但我想在Repeater模板中使用这种扩展方法.数据绑定时,我想执行以下操作:

<%# Eval("LengthInSeconds").ToTime() %>
Run Code Online (Sandbox Code Playgroud)

这没用,所以我试过:

<%# ((int) Eval("LengthInSeconds")).ToTime() %>
Run Code Online (Sandbox Code Playgroud)

它仍然无法正常工作.JIT编译器没有看到我的扩展方法,我在页面中有正确的import语句.

我解决这个问题的唯一想法是用Literal控件替换Eval并在代码隐藏中调用扩展方法,但不管怎样,我仍然想知道为什么这不起作用.

谢谢

asp.net data-binding extension-methods late-bound-evaluation

12
推荐指数
3
解决办法
5388
查看次数

告诉Firebug在任何Javascript被执行后很快就会破坏

当我点击一些<button>元素时,我继承了一堆做出意想不到的事情的代码.

该页面有很多Javascript,并且不清楚在按钮或其父元素上设置了什么(如果有的话)事件.我正在尝试找到执行开始的地方,以便我可以调试正在进行的操作.

有没有办法让Firebug(或任何Javascript调试器)在执行任何 javascript代码时中断?也许某种程度上以编程方式在每一行上设置一个断点?或者是否有其他方法可以找出按钮响应的事件(页面用户boh Prototype,jQuery和一些自定义Javascript.我知道.)

javascript debugging firebug event-handling

12
推荐指数
1
解决办法
5727
查看次数

如何监控url中的更改(片段标识符 - URL的锚点部分)

我正在制作一个倾向于在一个页面中处理所有请求的网站(Ajax).所以我认为我可以捕获每个用户点击一个链接,并检查如果它在我的网站上我做了一些关于JavaScript的事情,比如ajax请求,例如,ELSE它会像往常一样打开链接!

在window.location上做一个手表没有用!而且我不知道是否还有#符号之后的url部分.注意:无论使用Gmail和Facebook做,我猜!他们使用的是这样的:
http://mail.google.com/mail/ #inbox
http://www.facebook.com/home.php #/收件箱/ ?REF = MB

请考虑一下:我喜欢在我的项目中使用jQuery,所以任何使用它的解决方案都是首选.

有任何想法吗?

html javascript url jquery uri-fragment

9
推荐指数
1
解决办法
5794
查看次数

使用MySQL存储URL值的最佳方法是什么?

我在考虑将URL值存储在我的数据库中,但我知道某些URL有时会变得荒谬可笑.我认为我的MySQL数据库是5.0版.

我在考虑使用.

VARCHAR(255) 
Run Code Online (Sandbox Code Playgroud)

但这只会持续很长时间.所以我应该使用.

TEXT 
Run Code Online (Sandbox Code Playgroud)

mysql mysql-5.0

9
推荐指数
2
解决办法
5477
查看次数