小编M4N*_*M4N的帖子

如何实现类似gmail的热键

我想在Web应用程序中实现键盘热键.到目前为止,我一直在使用jquery.hotkeys插件,它允许我实现简单的热键(例如单键击a).

现在要通过键盘支持一些更复杂的导航,我想实现像gmail一样的"多键"热键,例如按下g(对于'go')然后i(对于'inbox')将你带到收件箱.

有没有人知道该任务的javascript组件(jquery插件或类似)?或者,实施此类热键的好方法是什么?

javascript hotkeys

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

如何在另一个用户控件中使用asp.net用户控件?

我有一个用户控件(gallery.ascx),我想photo.ascx在库控件中使用该控件.我已将此寄存器添加到顶部gallery.ascx,但仍无法找到照片:

<%@ Register TagPrefix="ssctrl" TagName="photo" Src="controls/photo.ascx" %>
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

c# asp.net user-controls ascx

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

如何使用ThreadPool类

namespace ThPool
{
    class Program
    {
        private static long val = 0;
        private static string obj = string.Empty;

        static void Main(string[] args)
        {
            Thread objThread1 = new Thread(new ThreadStart(IncrementValue));
            objThread1.Start();
            Thread objThread2 = new Thread(new ThreadStart(IncrementValue));
            objThread2.Start();
            objThread1.Join();
            objThread2.Join();

            Console.WriteLine("val=" + val + " however it should be " + (10000000 + 10000000));

            Console.ReadLine();
        }

        private static void IncrementValue()
        {
            for (int i = 0; i < 10000000; i++)
            {
                Monitor.Enter(obj);
                val++;
                Monitor.Exit(obj);
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如何使用ThreadPool类替换线程和监视器?

c#

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

在.NET中推导出循环复杂性

我知道通过右键单击并选择"计算代码度量标准",我可以在Visual Studio 2008团队资源管理器中访问我的代码的圈复杂度.我想公开这个数据,以便Web应用程序显示它.有人知道通过API访问这些数据的方法吗?

谢谢你的帮助!

.net cyclomatic-complexity visual-studio

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

具有由lambda定义的自定义IEqualityCompare的HashSet构造函数?

目前HashSet<T>,允许您自己定义相等比较的HashSet<T>(IEqualityComparer<T> comparer)构造函数是构造函数.我想将此EqualityComparer定义为lambda.

我发现这个博客帖子已经创建了一个类,允许你通过lambda生成你的比较器,然后使用extention方法隐藏这个类的构造,例如一个Except().

现在我想用构造函数做同样的事情.是否可以通过扩展方法创建构造函数?还是有另一种方式我可以以某种方式创建一个HashSet<T>(Func<T,T,int> comparer)

--UPDATE--
为了清楚起见,这是我所要完成的徒手版本的一个片段:

HashSet<FileInfo> resultFiles = new HashSet<FileInfo>(
    srcPath.GetFiles(),
    new LambdaComparer<FileInfo>(
        (f1, f2) => f1.Name.SubString(10).Equals(f2.Name.SubString(10))));
Run Code Online (Sandbox Code Playgroud)

或更理想的

HashSet<FileInfo> resultFiles = new HashSet<FileInfo>(
    srcPath.GetFiles(),
    (f1, f2) => f1.Name.SubString(10).Equals(f2.Name.SubString(10)));
Run Code Online (Sandbox Code Playgroud)

.net c# lambda iequalitycomparer

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

IoC容器之间的差异

我正在寻找有关如何为ASP.NET MVC应用程序选择IoC容器的一些指导.

(例如)StructureMap,Ninject,Castle Windsor,Unity,autofac和其他人之间有什么区别?任何人都可以提供一些提示或链接到可能有助于选择一个库的资源吗?

更新:有一个问题(Enterprise Library Unity vs其他IoC容器),它讨论了IoC容器初始化的差异.

但是功能上是否有任何差异,这会使一些IoC容器成为ASP.NET MVC应用程序的更好选择?

.net ioc-container

5
推荐指数
2
解决办法
1825
查看次数

是否有一种简单的方法可以在Visual Studio 2010中固定DataTip

有时使用鼠标在Visual Studio 2010中固定DataTip并不容易,例如:

在此输入图像描述

如果DataTip很长(如上所示),将鼠标光标从变量移动到"pin"图标会非常棘手.有时,只要将鼠标移到DataTip区域之外,DataTip就会消失.

是否有一种简单的方法来固定数据提示,例如键盘快捷键?

debugging visual-studio-2010 datatip

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

是否可以通用地实现此接口,以便只传递一个类型参数?

我有一个名为的接口Identifiable<TId>,它包含给定类型的单个属性Id.我想创建一个泛型类,将其中一个作为类型参数.它应该是通用的,因为我想返回具体类型,从其中调用其他泛型方法并使用类似的东西typeof(T).

这很好用:

public class ClassName<T, TId> where T : Identifiable<TId>
Run Code Online (Sandbox Code Playgroud)

问题是调用代码必须传递两种类型.例如.new ClassName<Person, int>()

我想知道是否在.net 3.5中有一些方法可以写这个,以便TI可以推断TI?允许来电者做new ClassName<Person>()什么?

.net c# generics .net-3.5

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

使用expressions/lambda设置属性值的通用方法

我试图找到一种通用的方法来为lambda表达式指定的属性赋值,查看下面的示例代码,ConverToEntities方法的签名将如何显示以及如何调用?

static void Main()
{
    List<long> ids = new List<long> {1, 2, 3};

    //Non generic way
    List<Data> dataItems = ids.ConvertToDataItems();

    //Generic attempt!!
    List<Data> differntDataItems =
        ids.ConvertToEntities<Data>( p => p.DataId );
}

public class Data
{
    public long DataId;
    public string Name;
}

public static class ExtensionMethods
{
    public static List<Data> ConvertToDataItems(this List<long> dataIds)
    {
        return dataIds.Select(p => new Data { DataId = p }).ToList();
    }

    public static List<T> ConvertToEntities<TProp>(
        this List<long> entities, Func<TProp> lambdaProperty )
    {
        return entities.Select(p => new …
Run Code Online (Sandbox Code Playgroud)

.net c# linq generic-list

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

如何为所有视图设置布局,基类和使用?

在MVC 5中,我可以为"Views/Web.Config"中的所有视图设置默认基类和使用:

<system.web.webPages.razor>
  <pages pageBaseType="SomeCustomPageClass">
    <namespaces>
      <add namespace="SomeNamespace" />
Run Code Online (Sandbox Code Playgroud)

我还可以在"_ViewStart.cshtml"中为所有视图设置默认布局:

@{ Layout = "~/Views/Shared/SomeCustomLayout.cshtml"; }
Run Code Online (Sandbox Code Playgroud)

我怎样才能在MVC 6中做到这些?

asp.net-core-mvc asp.net-core

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