相关疑难解决方法(0)

计算C#中的相对时间

给定一个特定DateTime值,我如何显示相对时间,如:

  • 2小时前
  • 3天前
  • 一个月前

c# time datetime datediff relative-time-span

1461
推荐指数
31
解决办法
15万
查看次数

为什么所有大写字母都被视为不良编码风格?

杰夫完成了他的帖子谈论这个,但我没有理解.

那么,为什么你认为这是一个糟糕的编码风格?

编辑:

我和很多人一样,不认为这是一种糟糕的编码风格.但杰夫比我更好的程序员,如果我错了,他的观点会转过头来点亮我的回答.我是Delphi开发人员已经有几年了,现在我正在成为一名C#开发人员,在Delphi中,这是一种常见的做法.

coding-style

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

在C#中命名Windows API常量

C#中常量命名约定是Pascal大小写:

private const int TheAnswer = 42;
Run Code Online (Sandbox Code Playgroud)

但有时我们需要从Windows API中表示已存在的常量.

例如,我不知道如何命名:

/// <summary>
/// With this style turned on for your form, 
/// Windows double-buffers the form and all its child controls.
/// </summary>
public const int WS_EX_COMPOSITED = 0x02000000;
Run Code Online (Sandbox Code Playgroud)

我该怎么命名呢?

保持它WS_EX_COMPOSITED可以让我快速将它与WinAPI相关联,但这是错误的.

一些选择:

  • WsExComposited - 太匈牙利人了
  • Composited - 太短
  • WsExenum with Compositedin it - 仍然是匈牙利人
  • ExtendedWindowsStyles.Composited - 班级常数?枚举?

应该指出的是,良好命名的目标是:

  • 它必须是可读的.
  • 它不能触发FxCop和StyleCop,即使这意味着将它隐藏起来.

c# pinvoke winapi constants naming-conventions

13
推荐指数
1
解决办法
774
查看次数

我应该把我的常数大都化吗?

你们有什么感想?常量应该大写吗?或者这是一个古老的做法?所以...

const int MY_CONSTANT = 5;
Run Code Online (Sandbox Code Playgroud)

const int myConstant = 5;
Run Code Online (Sandbox Code Playgroud)

language-agnostic coding-style constants

8
推荐指数
3
解决办法
5107
查看次数

一些C#命名约定问题

1)声明变量的政策是什么?你应该总是使用关键字private,还是可以跳过它?

string MyVar1;
Run Code Online (Sandbox Code Playgroud)

private string MyVar1;
Run Code Online (Sandbox Code Playgroud)

我看到的唯一原因是Microsoft有一天可以更改默认访问修饰符public而不是private.

在哪里说私人是可选的?对MSDN的任何引用?

2)常量的命名策略?

在写一个常量时我总是使用大写字母,但是一位朋友告诉我这违反了微软的命名政策,是吗?

const string MYVAR1;
Run Code Online (Sandbox Code Playgroud)

VS

const string myVar1;
Run Code Online (Sandbox Code Playgroud)

3)Pascal还是Camel?

我个人认为骆驼看起来很丑陋.

c# variables private constants naming-conventions

7
推荐指数
3
解决办法
4245
查看次数

命名局部常量:UpperCamelCase或lowerCamelCase?

您在C#中使用哪种命名约定用于本地常量?为什么?

const int Pi = 3;
const int pi = 3;
Run Code Online (Sandbox Code Playgroud)

似乎权衡是在较低的驼峰案例之间进行权衡,表明限制范围,而较高的驼峰案例更易读,更容易移到班级.我注意到StyleCop喜欢上骆驼箱.

c# camelcasing const naming-conventions

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

在C#中声明const的更优雅方式是什么?

可能重复:
常量的C#命名约定?

我正在用C#重构一个库,我发现了很多大写常量:

INTERVAL, TIME, SECONDS.
Run Code Online (Sandbox Code Playgroud)

我认为这是一种不必要的,我个人更喜欢用骆驼案声明一切.关于更好的方式存在一些确切的定义?

c# coding-style const

4
推荐指数
1
解决办法
1560
查看次数

如何在c#中构建一组常量变量

如何在c#中构建一组常量变量?

例如 :

IconType {
    public constant string folder = "FOLDER";
    public constant string application = "APPLICATION";
    public constant string system = "SYSTEM";
}
Run Code Online (Sandbox Code Playgroud)

然后我需要像这样使用IconType.system,但我不想做像IconType type = new IconType()这样的声明,我想方向访问它的变量.

它看起来像java中的JOptionPanel,当我想显示图标时我只需要调用这个JOptionPane.WARNING_MESSAGE

c#

4
推荐指数
1
解决办法
3291
查看次数

如何正确使用c#中的switch case块?

我在c#中有一个switch case语句,这里我作为私有常量的所有情况,这里有任何不好的编程实践,或者我需要在这里使用枚举和case case中的枚举器.我在这里展示了三个常量,我有十个常数和十个案例块

private const String FEASIBLESIZE = "Total FEASIBLESIZE";
private const String AVAILABLESIZE = "Total AVAILABLESIZE";
private const String EXCESSSIZE = "Total EXCESSSIZE";
                          .
                          . 
switch (value.ToString())
{
    case FEASIBLESIZE:
        Level.Add(TEAMSIZE, test.ToString());
        break;

    case AVAILABLESIZE:
        Level.Add(BROADSIZE, test.ToString());                                
        break;

    case EXCESSSIZE:
        Level.Add(NARROWSIZE, test.ToString());
        break;
         .
         .
         .
Run Code Online (Sandbox Code Playgroud)

c# switch-statement

2
推荐指数
1
解决办法
2058
查看次数

在方法中使用const

如果只需要在一个方法内使用常量,那么你应该在方法中还是在字段中声明它?

另外,如果你应该在方法中声明它,那么你应该使用小写或大写的第一个字母作为名称吗?

编辑:这不是重复,因为我问你是否应该在你的方法或字段中声明const.

c#

2
推荐指数
1
解决办法
808
查看次数

C#中私有类常量的标准应该是什么?

对于那些在C#中使用下划线前缀用于私有类成员的人(即private int _count;),你对私有常量使用了什么?我正在考虑以下内容,但我很好奇其他人在做什么.

private const int _MaxCount;
Run Code Online (Sandbox Code Playgroud)

c# coding-style

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