我目前正在构建一个P2P系统,它使用协议缓冲区来实现对等体之间的所有通信.系统中还有一些集中的部分,其中对等体与服务器通信.服务器使用JPA存储有关对等体的数据.
基本上,客户端的数据在Protocol Buffers-messages中,而服务器在JPA-entities中.我的问题是,如果有办法在它们之间自动转换?
我正在寻找的是:
理想情况下,你可以更进一步,让它们都是相同的类(即带有JPA注释的协议缓冲区),但如果这是不可能实现的,那么上面也可以.
这是否已经完成,如果不是,您认为在合理的时间内实施是否可行?
我目前正在将Windows Azure应用程序迁移到Amazon AWS.在Windows Azure中,我们使用 Lokad.Clout获得对Azure Blob存储的强类型访问.比如这样:
foreach(var name in storage.List(CustomerBlobName.Prefix(country))
{
var customer = storage.GetBlob(name); // strong type, no cast!
// do something with 'customer', snipped
}
Run Code Online (Sandbox Code Playgroud)
有关更详细的示例,请参阅他们的wiki.
在AWS SDK for .NET中,您不会获得强类型访问权限.例如,为了实现上述目的,您必须执行ListBojects然后解析每个对象的键,以便找到键的每个单独属性(我们经常使用由多个属性组成的键).
是否有任何S3相当于Azure的Lokad.Cloud?
更新:由于对象的大小,我们不能使用SimpleDB(使用Simple Savant).
我有一个问题是合并我认为是HG中的两个不同的头.当我在两个版本(屏幕截图中的512和502)之间进行更新时,文件之间存在差异.但是,当我尝试将512合并到502时,它表示没有任何合并.如果我更新到rev.512并尝试合并502到512我得到以下错误消息:"与工作目录祖先合并无效".从错误消息判断,它看起来像502是512的父级,但基于图形,它们看起来像两个不同的头.我做错了什么或误解了什么?

我即将将一些应用程序部署到我只有远程桌面访问权限的服务器上.有没有直接的方法来使用Visual Studio?我目前的想法是使用远程桌面的剪贴板访问部署到本地文件夹和该文件夹的副本.有没有更好的方法?
我正在使用生成的POCO类和实体框架.
为了使代码不那么复杂,我试图从代码中删除所有导航属性,同时仍然在数据库中保留外键约束(导航属性对我们来说弊大于利).
如果我从POCO类中手动删除它,我会收到以下错误
实体类型UserEntity不是当前上下文的模型的一部分
如果我尝试从.edmx文件中删除它们,我会收到以下错误:
错误3错误3015:从第479,562行开始映射片段时出现问题:表StorageContract(OwnerUserID)中的外键约束'fk_StorageContracts_User1'到表User(ID)::映射不足:外键必须映射到某些AssociationSet或EntitySets参与在概念方面的外键关联.
有没有办法从POCO类中删除导航属性而不删除相应的FK?
我在使用Firefox缓存我们网站上的exe文件时遇到了一些麻烦.如果我使用IE或Chrome下载它并再次开始下载,那么第二次下载会立即完成,但是使用Firefox它会从一开始就下载所有内容.
我在Chrome和Firefox的网络标签中添加了屏幕截图.请注意,两者都接收HTTP状态代码200,但Chrome表示(来自缓存).我需要添加哪些响应标头才能使Firefox缓存?
铬:

火狐:

如果你想尝试自己下载它,这是网址:https://dlud0tbph7s2n.cloudfront.net/Production/Windows/DegooSetup-Production-1.0.1052.exe.
我正在C中实现一个函数,我将byte []转换为int [].问题是int []的长度取决于byte []的内容(而不仅仅是byte []的长度)所以在迭代之前我不会知道int []的总长度整个字节[].因此,我正在寻找一些形式的av int-stream或动态增加的int-list,我可以写入,然后在我写完所有的int后转换为int [].我的C体验目前有点受限,所以我不确定什么是解决这类问题的最佳实践.有什么建议?