小编dan*_*die的帖子

猜猜这个转到的标签

我打算在VB6代码之后重构这个代码(由其他人编写).

Public Function GetValue(ID As Long) As Boolean
    On Error GoTo eh

    '' ... DAL Logic...

eh_Exit:
  On Error GoTo 0
  Exit Function
eh:
  Resume eh_Exit
End Function
Run Code Online (Sandbox Code Playgroud)

您认为原作者的意图是eh什么?

可能只是"呃,发生了什么事?"......

我想让它变得可读,而我不必像现在一样思考它......

refactoring label goto

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

我对延迟加载的方法有缺陷吗?

平台:带有Resharper 4.1,.NET 3.5的Visual Studio 2008 SP1

我有一个静态方法的类,GetProperty<T>它懒惰地返回一个属性值.

private static T GetProperty<T>(T backingField, Func<T> factory) 
    where T : class 
{
    if (backingField == null)
        backingField = factory();
    return backingField;
}
Run Code Online (Sandbox Code Playgroud)

但是,当我使用上述方法返回属性时,我收到两条警告,指出未分配私有支持字段.但是只有在需要时才会分配它们.

替代文字

这个警告是否可以忽略
- 或者 -
我的加载财产是否存在缺陷?

c# resharper warnings lazy-loading

0
推荐指数
2
解决办法
444
查看次数

你能声明一个可变长度的泛型类型声明吗?

我有一个CheckDuration带有以下函数签名的重载实用程序方法.

    private static Action<int> CheckDuration(Action action)
    private static Action<int> CheckDuration<T>(Action<T> action, T arg)
Run Code Online (Sandbox Code Playgroud)

基本上CheckDuration在控制台上打印运行方法所需的时间.

现在,我想检查一个带2个参数的方法的持续时间.
所以我必须创建另一个重载CheckDuration以下方法签名.

    private static Action<int> CheckDuration<T, U>(
        Action<T, U> action, T arg1, U arg2)
Run Code Online (Sandbox Code Playgroud)

有没有办法更优雅地处理这个问题?
我在考虑类似的事情

    private static Action<int> CheckDuration<params T>(
      Action<params T> action, params T arg)
Run Code Online (Sandbox Code Playgroud)

,这显然不起作用.

[更新]我现在暂时打开这个问题,看看有没有人为这类问题想出办法.

.net c# generics overloading

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

该关联表属于哪个模式?

我正在浏览AdventureWorks2008数据库,并希望创建一个将产品与销售人员相关联的新表.

这些表之间存在多对多关系.

替代文字

现在的问题是,两个架构中,Sales并且Production,不ProductSalesPerson表属于哪一种? ProductSalesPerson不一定属于任何一个架构.

我应该为此关联表创建新架构吗?

sql database sql-server database-design associative-table

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

编译器生成的.NET类名无效

我正在通过入门(使用PostSharp)

当我看到PostSharp注入(这个表达式是否正确?)一个方面代码到程序集中时,
我看到这个奇怪命名的类标有CompilerGeneratedAttribute. 替代文字

它被命名<>AspectsImplementationDetails_1.
据我所知,班级名称无法启动<>.
但PostSharp如何创建这样的类呢?

<>某种未知/内部操作的?


[更新] 我做了一些测试,看起来我能够生成有趣名字的类型. 替代文字

以下是使用的示例代码

using System;
using System.Reflection;
using System.Reflection.Emit;

namespace ReflectionDemo
{
    class Program
    {
        public static void Main(string[] args)
        {
            var typeNames = new[] 
            {
                "<>", "-", "+", "~", "!", "@", "#", "$", "%", "^", "&", 
                "*", "(", ")", "="
            };
            const string assemblyName = "Test";
            foreach (var typeName in typeNames)
            {
                PrintTypeName(
                    BuildType(assemblyName, typeName).CreateType());
            }
        }

        private static void …
Run Code Online (Sandbox Code Playgroud)

.net reflection aop identifier

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

从数字中获取小数值的可靠方法是什么?

我有许多类型Decimal(8, 2),并一直Substring用于获得小数值.

E.g.)
    declare @val decimal(8, 2), @strVal varchar(10)
    set @val = 15.80
    set @strVal = cast(@val as varchar)
    select  @val, substring(@strVal, charindex('.', @strVal), len(@strVal))
Run Code Online (Sandbox Code Playgroud)

有没有更好的方式来简单地得到分数值,.80@val而无需将其转换为一个字符?
我想知道是否有一个内置的UDF(用户定义函数)可以解析而不必推出我自己的版本.

sql t-sql sql-server sql-server-2005 sql-server-2008

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

在React中使用index作为键而不是Math.random()更好吗?

以下是我的反应代码,它显示菜单项,不幸的是我没有得到任何id作为列表中的键添加.作为下文档提到的按键部分,它是应尽量避免Math.random().Math.random()在显示菜单列表时,使用索引作为键是否具有高效性和优势?

代码 -

[{name: 'Home'}, {name: 'About'}, {name: 'News'}, {name: 'Contact'}].map((item, index) => {
    return `<li key=${index}>${item.name}</li>`
})
Run Code Online (Sandbox Code Playgroud)

javascript performance ecmascript-6 reactjs

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