我和我的同事一直在争论Pascal套管(上骆驼套管)与较低的CamelCasing.它们用于降低骆驼外壳,从SQL数据库中的表名到C#代码中的属性命名,但我更喜欢Pascal外壳,更低的驼峰外壳用于变量和Pascal外壳用于属性:
string firstName;
public string FirstName {
...
}
Run Code Online (Sandbox Code Playgroud)
但是他们习惯了这个:
string _firstname;
public string firstName {
...
}
Run Code Online (Sandbox Code Playgroud)
我试着跟上他们的"标准",所以代码看起来一样,但我不喜欢它.
我已经看到至少.NET框架使用这个约定,这就是我试图保留我的代码的方式,例如:
System.Console.WriteLine("string")
Run Code Online (Sandbox Code Playgroud)
你用什么/喜欢什么?为什么?我很抱歉,如果有人问过这个问题,但我搜查了一下,没有找到任何东西.
更新: 我给出了一个方法示例而不是属性,但它是相同的.正如我在第一段中所述,我的同事们使用Pascal约定(变量,方法,表名等)
我刚刚开始一个项目,因为这个项目是个人的,我想知道使用企业库有什么好处?我们在办公室的几个项目中使用版本2,但我不太确定(除了好的做法)它的优点,特别是在数据库组件中.有什么建议?谢谢
我想知道枚举结构类型是否对其成员有限制.我有一个非常大的"变量"列表,我需要存储在枚举中或作为类中的常量但我最终决定将它们存储在类中,但是,我对成员的限制有点好奇枚举(如果有的话).
那么,枚举对.Net有限制吗?
我今天早上正在使用一些C#代码,我有类似的东西:
foreach(DataRow row in MyMethod.GetDataTable().Rows) {
//do something
}
Run Code Online (Sandbox Code Playgroud)
所以,由于我没有完全理解语言框架,我想知道每次迭代完成后是否调用GetDataTable(),或者只是调用一次并且结果数据(可能是Rows)保存在内存循环通过它.无论如何,我宣布了一个新的集合来保存它并从那里工作......
我添加了一个新变量,所以我做了:
DataRowCollection rowCollection = MyMethod.GetDataTable().Rows;
foreach(DataRow row in rowCollection) {
//do something
}
Run Code Online (Sandbox Code Playgroud)
但我不太确定这是否有必要.
提前致谢.
因此,我即将对我们的一个项目实施条纹支付,我已经阅读了他们的 API 文档,其内容如下:
Stripe API 是围绕 REST 组织的。我们的 API 设计为具有可预测的、面向资源的 URL,并使用 HTTP 响应代码来指示 API 错误。我们使用内置的 HTTP 功能,例如 HTTP 身份验证和 HTTP 动词,这些功能可以被现成的 HTTP 客户端理解,并且我们支持跨域资源共享,以允许您从客户端安全地与我们的 API 交互Web 应用程序(尽管您应该记住,您永远不应该在任何公共网站的客户端代码中暴露您的秘密 API 密钥)。JSON 将在来自 API 的所有响应中返回,包括错误(尽管如果您使用 API 绑定,我们会将响应转换为适当的特定于语言的对象)。
他们为流行语言提供了一套很好的即用型 API 库,因此您可以将它们导入您最喜欢的语言,然后开始使用他们的 API,包括 PHP,这就是我们在这个项目中使用的 API。
现在,他们的 API 很大并且有很多对象。我们实际上并不打算使用整套功能,因此我最初的想法是仅将其 HTTP RESTFul 接口包装在简单的 cURL 代码周围,这样我就不必为了性能而加载其整套类。
现在,在我实际围绕他们的 HTTP API 实现我自己的 cURL 客户端之前,我花了几分钟查看他们的 PHP 库的源代码,他们似乎正是这样做的:包装 cURL 函数、抛出错误、公开对象化响应等。
那么问题是:即使我知道我将加载很多我不会使用的类,是否值得只使用他们的库,或者我应该用 cURL 围绕他们的 REST API 编写自己的包装器?
考虑到这个问题出现在我的脑海中,因为我们正在使用其他服务(例如 TangoCard),并且它们中的大多数都已弃用“本机”库,转而使用您最喜欢的 HTTP 客户端库,而只使用 REST API。
谢谢!
有没有办法将谷歌趋势服务中的谷歌趋势图嵌入到谷歌驱动器文档中?
我看到该选项嵌入在那里,但它为您提供了一个 JS 来放置 html 文档。我希望更多地将它嵌入到 google docs 的文档中,也许使用脚本编辑器。
谢谢。
我在谷歌上搜索一些关于这个的建议,我发现了一些链接.最明显的是 这一个,但最后我想知道我的代码是如何实现的.
我基本上有两节课.一个是Converter,另一个是ConverterThread
我创建了一个这个Converter类的实例,它有一个属性ThreadNumber,告诉我应该同时运行多少个线程(这是从用户读取的),因为这个应用程序将在多CPU系统上使用(物理上,如8 cpu)所以这是假设这将加快进口
Converter实例读取的文件范围从100mb到800mb,此文件的每一行都是制表符分隔的值记录,导入到另一个目标(如数据库).
ConverterThread类只是在线程内部运行(新的Thread(ConverterThread.StartThread))并且有事件通知,所以当它的工作完成后,它可以通知Converter类,然后我可以总结所有这些线程的进度并通知用户(例如,在GUI中)已经导入了多少这些记录以及已经读取了多少字节.
然而,似乎我遇到了一些麻烦,因为我得到关于文件无法读取的随机错误或者进度总和(百分比)超过100%这是不可能的,我认为这是因为线程管理不善,可能是事件返回的信息格式不正确(因为它从一个线程"传播"到另一个线程)
您是否有关于更好的线程实现实践的建议,以便我能做到这一点?
提前致谢.
有没有办法用Enterpise Library执行SQL自定义函数?我已经尝试过Database.ExecuteScalar()但由于某种原因它返回null.
这是我的功能:
Database db = DatabaseFactory.CreateDatabase("ConnectionString");
DbCommand cmd = db.GetStoredProcCommand("FunctionName");
db.AddInParameter(cmd, "Value1", DbType.String, Param1Value);
db.AddInParameter(cmd, "Value2", DbType.String, Param2Value);
return Convert.ToBoolean(db.ExecuteScalar(cmd));
Run Code Online (Sandbox Code Playgroud)
这里db.ExecuteScalar(cmd)方法返回null.存储过程不会发生这种情况.
顺便说一下,即时通讯使用4.0版
谢谢.
.net ×7
c# ×7
curl ×1
database ×1
google-docs ×1
iterator ×1
loops ×1
php ×1
sql-server ×1
standards ×1