小编Nic*_*ong的帖子

分叉和重命名GitHub项目时的最佳工作流程

我试图找出在Github中使用现有开源项目的分支的最佳工作流程.我想采用一个现有项目并对其进行重大更改,在这种情况下将其移植到android并添加特定的android功能.我想满足以下条件:

  1. 当原始代码更新时,能够将更改从其公共仓库提取到新的Android端口.
  2. 当我修复不仅适用于android端口的错误时,能够将更改(通过拉取请求)汇总到原始项目.
  3. 有一个单独重命名的项目版本,以明确它是一个Android端口.我看着重命名一个分叉,Github给了我关于这样做的巨大警告.

我最初的想法是,我将fork原始项目然后fork并重命名我的fork给我以下的repos:

original-author/projectA
nicstrong/projectA
nicstrong/projectA-android
Run Code Online (Sandbox Code Playgroud)

这将允许我在我的本地repo本地/ projectA-android推送更改为nicstrong/projectA-android.然后从原始项目更新我可以将nicstrong/projectA重新设置为原始作者/ projectA的最新版本,然后从nicstrong/projectA获取/合并到local/projectA-android.

我的问题是:

  1. 我对整个Git事情都很陌生.这看起来像是一个好方法吗?或者是否有更好的工作流程来处理这个场景?
  2. 我如何处理从projectA-android推送到nicstrong/projectA所以我可以设置原始项目的拉取请求?

git open-source github

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

在SQL Server中存储MD5哈希

在SQL Server中varbinary(16),存储MD5哈希是最有效的方式吗?除了在linq查询中返回它之外,不会对它做任何事情.

sql-server md5

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

分组数据运行

SQL专家,

有没有一种使用SQL将数据运行组合在一起的有效方法?
或者在代码中处理数据会更有效率.

例如,如果我有以下数据:

ID|Name
01|Harry Johns
02|Adam Taylor
03|John Smith
04|John Smith
05|Bill Manning
06|John Smith
Run Code Online (Sandbox Code Playgroud)

我需要显示这个:

Harry Johns
Adam Taylor
John Smith (2)
Bill Manning
John Smith
Run Code Online (Sandbox Code Playgroud)

@Matt:对不起,我在使用嵌入式html表格格式化数据时遇到了问题,这个表格在预览中有效但不在最终显示中.

sql

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

使用ClickOnce从依赖程序集部署内容文件

我有一个简单的WinForms应用程序,我使用ClickOnce在内部部署.主应用程序有一个依赖程序集,该程序集在构建属性中有一些标记为"内容"和"始终复制"的xml模板文件,但如果我进入项目属性,它们不会显示在应用程序文件列表中 - >发布 - >应用程序文件对话框.

任何人都知道如何部署这些属于依赖程序集的Xml文件.

@ codeConcussion-谢谢,这很有效.最后,我使用Add Existing File添加了xml文件并选择了"Add as Link",它完成了同样的事情.

clickonce

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

LinqToSql和抽象基类

我有一些linq实体继承了这样的东西:

public abstract class EntityBase { public int Identifier { get; } }

public interface IDeviceEntity { int DeviceId { get; set; } }

public abstract class DeviceEntityBase : EntityBase, IDeviceEntity
{
  public abstract int DeviceId { get; set; }
}

public partial class ActualLinqGeneratedEntity : DeviceEntityBase
{
}
Run Code Online (Sandbox Code Playgroud)

在通用方法中,我使用以下命令查询DeviceEnityBase派生实体:

return unitOfWork.GetRepository<TEntity>().FindOne(x => x.DeviceId == evt.DeviceId);
Run Code Online (Sandbox Code Playgroud)

其中TEntity有一个绑定,它是一个DeviceEntityBase.此查询始终失败,并出现InvalidOperationException,并显示消息"类成员DeviceEntityBase.DeviceId未映射".即使我在抽象基类中添加了一些映射信息

[Column(Storage = "_DeviceId", DbType = "Int", Name = "DeviceId", IsDbGenerated = false, UpdateCheck = UpdateCheck.Never)]
Run Code Online (Sandbox Code Playgroud)

c# linq-to-sql

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

您使用新的Fluent接口配置IOC容器的惯例/习语/模式是什么

我正在将大量代码移到Castle Trunk中,其中包括用于配置容器的新流畅界面.由于该项目有一个超出维护的巨大windsorConfig xml文件,我想我会开始利用这个新功能.我知道其他容器(例如StructureMap 2.0)也包含用于容器配置的流畅接口,所以这个问题不是基于Windsor.

我的问题是你使用新的流畅样式接口用于容器配置的约定/习语/模式是什么?

我的第一个想法是在某处创建一个静态方法(例如ContainerConfig.Config),它会将应用程序使用的所有相关类型加载到容器中.我担心最终这个单片函数最终会像xml配置文件一样难以维护(减去尖括号税).

我的第二个想法是将其分解,因此每个依赖程序集按照惯例导出其默认配置.我可以看到这对程序集内部使用的层次结构很有用.但对于外部使用的类型,是否应该在内部定义配置?

我想的越多,我似乎提出的问题就越多.你对此有什么想法?

.net structuremap fluent-interface inversion-of-control

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

多部分表单数据中文件名中的国际字符

我正在使用 Apache HTTP 组件 (4.1-alpha2) 将文件上传到保管箱。这是使用多部分表单数据完成的。以包含国际(非 ascii)字符的多部分形式对文件名进行编码的正确方法是什么?

如果我使用那里的标准 API,服务器会返回一个 HTTP 状态禁止。如果我修改上传代码,则文件名是 urlencoded:

MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
FileBody bin = new FileBody(file_obj, URLEncoder.encode(file_obj.getName(), HTTP.UTF_8), HTTP.UTF_8, HTTP.OCTET_STREAM_TYPE );
entity.addPart("file", bin);            
req.setEntity(entity);
Run Code Online (Sandbox Code Playgroud)

文件已上传,但我最终得到的文件名仍然是编码的。例如 %D1%82%D0%B5%D1%81%D1%82.txt

java http internationalization

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

XML序列化和空集合

我有一个属性定义为:

[XmlArray("delete", IsNullable = true)]
[XmlArrayItem("contact", typeof(ContactEvent)),
 XmlArrayItem("sms", typeof(SmsEvent))]
public List<Event> Delete { get; set; }
Run Code Online (Sandbox Code Playgroud)

如果List <> Delete没有项目

<delete />
Run Code Online (Sandbox Code Playgroud)

发出.如果List <> Delete设置为null

<delete xsi:nil="true" />
Run Code Online (Sandbox Code Playgroud)

发出.有没有办法使用属性来获取如果集合没有项目不发出删除元素?

格雷格 - 非常感谢,我甚至没有读过IsNullable文档,只是假设它发出了不需要的信号.

Rob Cooper - 我试图避免使用ISerializable,但Gregs建议有效.我确实碰到了你在(1)中概述的问题,如果集合长度为零,我只是返回null而破坏了一堆代码.为了解决这个问题,我创建了一个EventsBuilder类(我正在序列化的类称为Events),它管理Events类的底层对象的所有生命周期/创建,这些对象吐出我们的Events类以进行序列化.

c# xml-serialization

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

从脚本onload调用Angular控制器

我试图在从onload回调加载脚本后更新我的控制器的状态.

我加载了Google客户端API:

<script src="https://apis.google.com/js/client.js?onload=OnLoadCallback"></script>
Run Code Online (Sandbox Code Playgroud)

然后在OnLoadCallback中,我尝试手动引导AngularJS并将设置状态设置为我的控制器:

function OnLoadCallback() {         
      var $injector = angular.bootstrap(document, ['app']);
      // load required gapi APIs          
      var $controller = $injector.get('$controller');        
      var UserCtrl = $controller('UserCtrl');
      UserCtrl.user.apiLoaded = true;          
};
Run Code Online (Sandbox Code Playgroud)

似乎无法创建一个注入了$ scope的控制器.由于呼叫$controller('UserCtrl')失败:

未捕获错误:未知提供者:$ scopeProvider < - $ scope

您可以通过查看此Plunk中的控制台来查看错误.

angularjs angularjs-scope

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