小编And*_*vko的帖子

如何在Visual Studio中关闭构建定义的缓存

在项目文件中,我导入自己的目标文件

<Import Project="Build\CopyDependencies.target" />
Run Code Online (Sandbox Code Playgroud)

然后我从目标文件中调用目标

<CallTarget Targets="CopyDependencies" UseResultsCache="false" />
Run Code Online (Sandbox Code Playgroud)

如果我编辑CopyDependencies.target文件,我必须重新加载整个解决方案,然后只有更改到CopyDependencies.target生效.我相信它是Visual Studio中的某种构建定义缓存?如果是,也许它可以关闭?

msbuild visual-studio

23
推荐指数
2
解决办法
7237
查看次数

如何在AngularjJS中创建'url_for'链接帮助器

在.NET MVC中,存在@Url.Action()和在RoR中存在url_for()

我在angularjs中找不到类似的url building helper.

我已经提供了构建url所需的所有东西,$routeProvider所以:$routeProvider.urlFor("MyCtrl", {id: 5})可能很高兴.

我的主要目标是避免在视图和其他地方使用硬编码的网址,并避免重复网址/路由模式两次.

更新:

似乎很难解释我想要的东西,所以这里是我想要的确切示例:

而不是在视图中写这个:

<a ng-href="/product/5">foo</a>
Run Code Online (Sandbox Code Playgroud)

我想写这个:

<a ng-href="urlFor("ProductCtrl", {id:5})">foo</a>
Run Code Online (Sandbox Code Playgroud)

因此,如果以后我决定改变ProductCtrl的路径,我就不必在这个元素中更新url.

什么是我的目标的好方法?

url routing angularjs angularjs-routing

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

Visual Studio 2010 + resharper支架缩进问题

我正在使用VS 2010 + resharper,我已经厌倦了在代码中重新格式化支架缩进,因为我想要它.例如,如果我有像这样的代码:

operators.Keys
    .ToList()
    .ForEach(k => filters
        .AddRange(CustomHtmlHelpers.GetIdAndValueListByPrefix(queryString, k)
            .Select(t => new QueryFilter()
            {
                Operation = operators[k],
                PropertyName = t.Item1,
                Value = t.Item2
            })))
Run Code Online (Sandbox Code Playgroud)

如果我把;VS(或resharper)'修复'括号缩进放在最后,那么代码就像:

operators.Keys
    .ToList()
    .ForEach(k => filters
                        .AddRange(CustomHtmlHelpers.GetIdAndValueListByPrefix(queryString, k)
                                    .Select(t => new QueryFilter()
                                    {
                                        Operation = operators[k],
                                        PropertyName = t.Item1,
                                        Value = t.Item2
                                    })));
Run Code Online (Sandbox Code Playgroud)

如果我使用resharper的代码清理,也会发生同样的情况.我可能会关闭自动代码重新格式化,;但在其他情况下我需要它.我尝试在VS和resharper设置中更改代码格式化选项,但从未得到我想要的缩进.

我如何配置vs或resharper,以便它不会执行多个选项卡格式化?或者也许我可以使用其他插件(与r#一起)专门用于此目的?

编辑:对于任何对这个问题感兴趣的人来说,在r#论坛http://devnet.jetbrains.net/thread/304794中有同样的问题.任何想要从r#看到更好的嵌套代码缩进的人都欢迎在这里投票赞成http ://youtrack.jetbrains.net/issue/RSRP-88220

c# resharper code-formatting brackets visual-studio-2010

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

AutoFixture CompositeDataAttribute不适用于PropertyDataAttribute

我正在尝试AutoPropertyDataAttribute基于CompositeDataAttribute此示例创建AutoFixture:PropertyData和异构参数.

它适用于单组参数,但失败并带有更多参数集.这是代码:

public static IEnumerable<object[]> NumericSequence
{
    get
    {
        yield return new object[] {1};
        //yield return new object[] {2};
    }
}

[Theory]
[AutoPropertyData("NumericSequence")]
public void Test(int? p1, int? p2, int? p3)
{
    Assert.NotNull(p1);
    Assert.NotNull(p2);
}

public class AutoPropertyDataAttribute : CompositeDataAttribute
{
    public AutoPropertyDataAttribute(string propertyName)
        : base(
              new DataAttribute[] { 
                  new PropertyDataAttribute(propertyName), 
                  new AutoDataAttribute()
              })
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

尝试取消注释第二个yield将使用消息中断测试:

System.InvalidOperationException: Expected 2 parameters, got 1 parameters
   at Ploeh.AutoFixture.Xunit.CompositeDataAttribute.<GetData>d__0.MoveNext()
   at Xunit.Extensions.TheoryAttribute.<GetData>d__7.MoveNext()
   at Xunit.Extensions.TheoryAttribute.EnumerateTestCommands(IMethodInfo method) …
Run Code Online (Sandbox Code Playgroud)

c# xunit.net autofixture

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

NHibernate中有任何算术运算预测吗?

我想从NHibernate获取这个SQL:

SELECT SUM(color_pages) * SUM(total_pages)
FROM connector_log_entry
GROUP BY department_name
Run Code Online (Sandbox Code Playgroud)

但我无法在任何地方找到任何算术运算(*)投影.

这是我到目前为止的代码:

Session.QueryOver<ConnectorLogEntry>()
       .SelectList(list => list
           .SelectGroup(m => m.DepartmentName)
           .WithAlias(() => dto.Department)
           .Select(Projections.Sum<ConnectorLogEntry>(m => m.TotalPages))
           //.Select(Projections.Sum<ConnectorLogEntry>(m => m.ColorPages))
           .WithAlias(() => dto.TotalColorPercentage))
       .TransformUsing(Transformers.AliasToBean<DepartmentConsumption>());
Run Code Online (Sandbox Code Playgroud)

c# math nhibernate nhibernate-projections queryover

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

如何在c#中从派生类型中获取泛型类型的泛型参数类型

我有:

class MyBase<T1, T2>{}

class MyConcreteBase<T2> : MyBase<ConcreteType1, T2>{}

class MyConcrete1 : MyConcreteBase<ConcreteType2>{}

class MyConcrete2 : MyBase<ConcreteType1, ConcreteType2>{}
Run Code Online (Sandbox Code Playgroud)

我如何得到类型T1T2如果我有实例MyConcrete1MyConcrete2MyConcreteBase或任何其他类型的实例派生自MyBase<T1, T2>

我现在这样做的方式是使用.GetType().BaseTypewhile BaseType.Name.StartsWith("MyBase")然后使用继承链"起床".GetGenericArguments()

它工作正常,但我对它不满意,尤其是.StartsWith("MyBase")部分.

有人有其他建议吗?

c# reflection

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

如何动态构建()=> x.prop lambda表达式?

我的代码就像

DepartmentPaperConsumption dto = null;
Run Code Online (Sandbox Code Playgroud)

然后我有NHibernate QueryOver结果,我想订购它

result.OrderByAlias(() => dto.TotalColorCopys);
Run Code Online (Sandbox Code Playgroud)

但我希望能够dto用字符串动态指定任何属性.我尝试使用动态LINQ,但似乎我无法得到它.我也试过从头开始构建LambdaExpression - 也没有运气.我将不胜感激任何帮助.

c# linq nhibernate lambda queryover

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

如何构建WCF Web服务解决方案,以便以不同的方式开发和托管?

我即将开始构建WCF Web服务,我想以这样的方式构建解决方案:

  1. 易于开发 - 我希望我的团队中的开发人员可以获得源代码,构建和启动服务,可能最好是有可能将其作为控制台应用程序启动?

  2. 以后可以在IIS,WAS或Windows服务中轻松托管此服务.

我在想这个项目:

  • 共享(用于Web服务接口)
  • WebService(用于实际实现Web服务和svc文件)
  • ConsoleHost(用于在控制台应用中托管Web服务)

这种方法会有问题吗?我应该事先考虑哪些事情?也许有更好的结构?

我将不胜感激任何有助于我选择正确结构的资源的见解和链接.

ps web服务本身很简单,但这种方法可以重用于更多服务.

c# wcf web-services solution

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

为什么C#编译器无法理解在单独的类中使用的泛型参数?

这是我的代码:

public class Range<TNum> where TNum : IComparable
{
    public TNum From { get; set; }
    public TNum To { get; set; }
}

public class MarkableRange<TNum> where TNum : IComparable
{
    private readonly List<Range<TNum>> _markedRanges = new List<Range<TNum>>();

    public void MarkOne(TNum number)
    {
        _markedRanges.Where(r => number >= r.From && number <= r.To);
    }
}
Run Code Online (Sandbox Code Playgroud)

编译器说它不能在number >= r.From和中的操作数上应用operator> =number <= r.To

我可以逃脱,List<Tuple<TNum, TNum>>但我想要更有意义的东西.那么我做错了什么或c#编译器不是那么聪明才能理解我的意图?

c# generics

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

javascript比较运算符不一致

谁能解释为什么这里a = [] ? 1 : 2a等于1,这里b = [] == true ? 1 : 2b等于2

javascript

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