小编Phi*_*tle的帖子

如何在SourceTree中正确变换?

Windows 7上的SourceTree 1.6.4.0.

让我们说以下是我的出发点:

在此输入图像描述

 C <- master
/
- A - B <- topic
Run Code Online (Sandbox Code Playgroud)

我想把主题改成主人.
我的目标是:

  C - A - B
  ^       ^
master  topic
Run Code Online (Sandbox Code Playgroud)

但我最终得到:

在此输入图像描述

那我可以做

git push origin topic -f
Run Code Online (Sandbox Code Playgroud)

我得到了预期的结果,但在SourceTree中执行此操作的正确方法是什么?

git rebase atlassian-sourcetree

36
推荐指数
2
解决办法
3万
查看次数

C# - 对象组成 - 删除Boilerplate代码

背景/问题

我已经处理过许多需要持久保存数据的.NET项目,并且通常最终使用了Repository模式.有没有人知道在不牺牲代码库可扩展性的情况下删除尽可能多的样板代码的好策略?

继承战略

因为很多存储库代码都是锅炉板并且需要重复,所以我通常会创建一个基类来覆盖基本知识,例如异常处理,日志记录和事务支持以及一些基本的CRUD方法:

public abstract class BaseRepository<T> where T : IEntity
{
    protected void ExecuteQuery(Action query)
    {
        //Do Transaction Support / Error Handling / Logging
        query();
    }       

    //CRUD Methods:
    public virtual T GetByID(int id){}
    public virtual IEnumerable<T> GetAll(int id){}
    public virtual void Add (T Entity){}
    public virtual void Update(T Entity){}
    public virtual void Delete(T Entity){}
}
Run Code Online (Sandbox Code Playgroud)

因此,当我有一个简单的域时,这很有效,我可以为每个实体快速创建一个DRY存储库类.但是,当域变得更复杂时,这会开始崩溃.假设引入了一个不允许更新的新实体.我可以拆分基类并将Update方法移动到另一个类中:

public abstract class BaseRepositorySimple<T> where T : IEntity
{
    protected void ExecuteQuery(Action query);

    public virtual T GetByID(int id){}
    public virtual …
Run Code Online (Sandbox Code Playgroud)

.net c# inheritance design-patterns composition

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

mod_rewrite:从URL中删除查询字符串?

我正在尝试使用.htaccess进行以下重定向(301)

*?page = 1重定向到*

(其中*是通配符).

基本上,我只是想阻止任何人访问URL末尾的页面= 1的页面,而是将它们指向相同的网址减去?page=1.

有这么快的方法吗?

apache .htaccess mod-rewrite redirect

30
推荐指数
4
解决办法
6万
查看次数

VS性能差 - IsAssertEtwEnabled上的CPU很高

我正在运行Visual Studio 2013 Update 4,并且在简单的UI菜单导航和基本文本编辑方面看到了高CPU使用率和明显的延迟.

使用ProcessExplorer我拍了一个屏幕截图,显示一个线程在一个名为IsAssertEtwEnabled的东西中做了很多CPU :

Process Explorer截图

屏幕截图是在"扩展和更新"窗口中随机向上和向下滚动捕获的.

任何想法如何加快性能?

是的,我正在运行几个插件,但我更愿意保留它们,或者至少找到一种方法来隔离导致这种情况的插件.

我已经回顾了类似的问题(VS2013 Update 3令人难以置信的慢 - devenv.exe !! IsAssertEtwEnabled有罪的线程),但我没有安装DevExpress的任何东西.

performance plugins visual-studio visual-studio-2013

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

C#空传播运算符/条件访问表达式&if块

空传播运营商/条件接入表达在未来看起来像一个非常方便的功能.但我很好奇它是否有助于解决检查子成员是否为null然后在if块内的所述子成员上调用布尔方法的问题:

  public class Container<int>{
       IEnumerable<int> Objects {get;set;}
  }

  public Container BuildContainer()
  { 
      var c = new Container();

      if (/* Some Random Condition */)
         c.Objects = new List<int>{1,2,4};
  }

  public void Test()
  {
      var c = BuildContainer();

      //Old way
      if ( null != c && null != c.Objects && c.Objects.Any())
         Console.Write("Container has items!");


      //C# 6 way?
      if (c?.Object?.Any())
          Console.Write("Container has items!");
  }
Run Code Online (Sandbox Code Playgroud)

c?.Object?.Any()编译吗?如果传播运算符短路(我认为这是正确的术语)为null,那么你有if (null),这是无效的.

C#团队是否会解决这个问题,或者我是否错过了null传播运算符的预期用例?

c# null language-features c#-6.0

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

更新Android L工具后构建失败

更新工具后,我无法构建我的项目.我在Android Studio中收到此错误.

/build/exploded-aar/com.android.support/support-v4/21.0.0-rc1/AndroidManifest.xml:3]无法解析:必须是整数或代号.

有任何想法吗?

这个清单来自我认为的支持库.我的项目也有另一个min=14 target=19

<?xml version="1.0" encoding="utf-8"?>
<!--
 Copyright (C) 2014 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either …
Run Code Online (Sandbox Code Playgroud)

android android-manifest android-gradle-plugin android-5.0-lollipop

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

VirtualBox - 内核需要一个x86-64 cpu但只检测到一个i686 cpu

Intel i5-2410M CPU运行在2.30 GHz,运行Windows 7 64位操作系统.

我安装了VirtualBox 4.13.

我想跑,ubuntu-14.04-desktop-amd64.iso但我得到一个错误

这个内核需要一个x86-64 cpu,但只检测到一个i686 cpu

我甚至在BIOS设置中启用了Intel Virtualization,然后尝试再次使用该图像,但我仍然得到相同的错误.

还有其他原因导致我无法使用该图像吗?

virtualbox x86-64 intel ubuntu-14.04

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

MSDeploy - 允许参数在parameters.xml中为optional/empty

我正在使用来部署 Web应用程序.

我使用paramaters.xml文件来操作我的应用程序的,特别是应用程序设置部分.

我有一些设置,其中只有特定环境的值才有效,其余时间值应为空(即,属性应该只有生产值).但是,当我没有指定值时,MSDeploy会给我这个例外:

 Microsoft.Web.Deployment.DeploymentException: 
   The 'facebookUserToken' argument cannot be null or empty.
   at Microsoft.Web.Deployment.DeploymentSyncParameterValidation.Validate(String parameterName, String parameterValue)
   at Microsoft.Web.Deployment.DeploymentSyncParameter.set_Value(String value)
   at Microsoft.Web.Deployment.DeploymentSyncParameterCollection.LoadFromFile(XPathNavigator nav, String fileName, Boolean ignoreExtraSetParameters)
   at Microsoft.Web.Deployment.DeploymentSyncParameterCollection.Load(Stream stream, String fileName, Boolean ignoreExtraSetParameters)
   at Microsoft.Web.Deployment.DeploymentSyncParameterCollection.Load(String fileName, Boolean ignoreExtraSetParameters)
   at MSDeploy.MSDeploy.HandleSetParameters(DeploymentObject sourceObject, Random random)
   at MSDeploy.MSDeploy.ExecuteWorker()
   at MSDeploy.MSDeploy.Execute()
   at MSDeploy.MSDeploy.Main(String[] unusedArgs)
Run Code Online (Sandbox Code Playgroud)

如何配置MSDeploy以允许参数具有空值?

web.config中:

<applicationSettings>
    <SO.Example>
        <setting name="FacebookUserToken" serializeAs="String">
           <value></value>
        </setting>
    </SO.Example>
</applicationSettings>
Run Code Online (Sandbox Code Playgroud)

parameters.config:

   <parameter …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc teamcity web-config msdeploy

15
推荐指数
2
解决办法
4152
查看次数

定义自己的关键字和含义

是否可以在C#中定义关键字?
我的意思是

public important Form newform;
Run Code Online (Sandbox Code Playgroud)

哪里important是新关键字.这意味着,例如,如果类型是null在编译错误时发生的.所以这个例子会产生错误.一个没有错误的例子就是

public important Form newform = form1;
Run Code Online (Sandbox Code Playgroud)

c# compiler-errors compilation keyword

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

只在SourceTree中推送当前分支

在SourceTree中,当我推送分支时,它默认推送每个分支.(即选中全选).

有没有办法禁用此行为,只推送当前分支?

截图

git atlassian-sourcetree

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