小编mat*_*att的帖子

连接/聚合字符串的最佳方式

我正在寻找一种方法将不同行的字符串聚合成一行.我想在很多不同的地方做这个,所以有一个功能来促进这将是很好的.我尝试使用COALESCE和的解决方案FOR XML,但他们只是不为我削减它.

字符串聚合会执行以下操作:

id | Name                    Result: id | Names
-- - ----                            -- - -----
1  | Matt                            1  | Matt, Rocks
1  | Rocks                           2  | Stylus
2  | Stylus
Run Code Online (Sandbox Code Playgroud)

我已经看过CLR定义的聚合函数作为替代COALESCEFOR XML,但显然SQL Azure 支持CLR定义的东西,这对我来说很痛苦因为我知道能够使用它会解决很多问题.我的问题.

是否有任何可能的解决方法,或类似的最佳方法(可能不如CLR那样最优,但嘿,我会采取我能得到的)我可以用来聚合我的东西?

sql sql-server aggregate-functions azure azure-sql-database

91
推荐指数
6
解决办法
13万
查看次数

Windows Update后,System.Web.Mvc无法正常运行

在昨天的Windows Update之后,我似乎在构建项目时遇到了问题.

Related Windows Updates could be:
ASP.NET MVC 2.0: KB2993939
ASP.NET MVC 3.0: KB2993937
ASP.NET MVC 4.0: KB2993928
ASP.NET MVC 5.0: KB2992080
ASP.NET MVC 5.1: KB2994397
Run Code Online (Sandbox Code Playgroud)

与System.Web.Mvc相关的错误

这些错误似乎都与System.Web.Mvc我检查过的命名空间有关; 它仍然与该项目有关References.在Windows Update期间我的MVC项目可能出现什么问题,我该如何纠正它?

以下是指示今天管理的更新的日志:

16/10/2014的Windows Update

c# asp.net-mvc namespaces windows-update

53
推荐指数
3
解决办法
4万
查看次数

REPLACE INTO,它是否重新使用PRIMARY KEY?

REPLACE INTOMySQL中的函数以删除和插入行的方式工作.在我的表中,主键(id)是自动递增的,所以我期望它删除然后id在数据库的尾部插入一个表.

但是,它出乎意料并插入相同的id!这是预期的行为,还是我在这里遗漏了什么?(我id在调用REPLACE INTO语句时没有设置)

mysql sql duplicates sql-insert sql-delete

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

C# - 以字节块从Google Drive下载

我目前正在开发一个网络连接不佳的环境.我的应用有助于为用户自动下载所需的Google云端硬盘文件.它适用于小文件(范围从40KB到2MB),但对于较大的文件(9MB)则经常失败.我知道这些文件大小可能看起来很小,但就我客户的网络环境而言,Google Drive API始终会因9MB文件而失败.

我已经得出结论,我需要以较小的字节块下载文件,但我不知道如何使用Google Drive API来实现这一点.我一遍又一遍地阅读这篇文章,我尝试了以下代码:

// with the Drive File ID, and the appropriate export MIME type, I create the export request
var request = DriveService.Files.Export(fileId, exportMimeType);

// take the message so I can modify it by hand
var message = request.CreateRequest();
var client = request.Service.HttpClient;

// I change the Range headers of both the client, and message
client.DefaultRequestHeaders.Range =
    message.Headers.Range =
    new System.Net.Http.Headers.RangeHeaderValue(100, 200);
var response = await request.Service.HttpClient.SendAsync(message);

// if status code = 200, copy …
Run Code Online (Sandbox Code Playgroud)

.net c# rest google-drive-api

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

打包/发布Azure项目时出现System.OutOfMemoryException

我一直在尝试打包/发布我的Azure项目一段时间(但无济于事).我尝试过以下方法:

  • 右键单击 - >从Visual Studio打包/发布(OutOfMemoryException)
  • CSPack(即使在接近2小时后仍然保持运行,我关闭了它)
  • MSBuild(OutOfMemoryException)

如何规避此OutOfMemoryException?我目前正在使用12GB内存运行VS2012,所以虽然我认为项目非常庞大(很多很多子项目),但我认为我的机器能够处理它.例外情况如下:

C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v11.0\Windows Azure Tools\2.1\Microsoft.WindowsAzure.targets(2866,5):error:抛出了类型'System.OutOfMemoryException'的异常.[C:\用户\ ..\WindowsAzure.ccproj]

这非常令人沮丧,如果有人能给我一些友好的建议,我将非常感激!

.net msbuild out-of-memory azure visual-studio-2012

11
推荐指数
2
解决办法
4979
查看次数

在LINQ中使用文本SQL

我目前在为项目使用LINQ to SQL时遇到问题.这是因为大多数冗长的SQL查询(或视图,而不是)都被硬编码到C#中,而我们一直在做的就是使用它context.Database.SqlQuery<ClassName>(sql, sqlParams).

它通常非常有效,但是现在我们需要更有活力的东西.我们需要插入类似的东西.Where(x => x.Name.Contains("Anonymous")).Take(20)或其他东西.但是,直接插入前面提到的代码行将导致以下结果:

context.Database.SqlQuery<ClassName>(sql, sqlParams).Where(x => x.Name.Contains("Anonymous")).Take(20);

虽然它实际上工作并拉出名称包含"匿名"的前20条记录,但性能非常糟糕.它在幕后的作用是从该表中获取所有记录,然后在将它们加载到内存后最终过滤它们.

我想问一下,有没有办法将文本SQL翻译成LINQ,或者将LINQ翻译成SQL,这样我就可以在一个语句中执行我的文本SQL和LINQ.如果你实际上没有解决方案,我也很乐意欣赏建议......!

编辑:我考虑使用表达式树,但我不确定它们如何真正适合图片.另外,我考虑过使用数据库视图.但是有很多视图(每个表都有相当多的数量),将所有内容移植到MS SQL然后重写所有查询逻辑肯定是一件麻烦事.

c# sql linq sql-server linq-to-sql

10
推荐指数
1
解决办法
1371
查看次数

MySql - ON DUPLICATE KEY INSERT

我明白存在INSERT IGNOREINSERT ... ON DUPLICATE KEY UPDATE.但是,当存在重复键时,我想对INSERT临时表执行操作以保留已违反的唯一键的记录,以便我可以将其输出给用户.

有什么方法可以ON DUPLICATE INSERT吗?如果它有帮助,我正在尝试进行批量插入.

mysql sql insert on-duplicate-key

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

蒙蒂霍尔程序模拟(C#)

我试图模拟Monty Hall问题(因为我从" Think Statistics"这本书中读到了一个人,特别是在看到计算机模拟之后才被说服),这是我最熟悉的编程语言.我的情况是奖品的位置是随机的(在每次运行中),我的选择是随机的,游戏主持人选择打开门是随机的(如果我选择了非奖品,则不能随机).

令人惊讶的是,无论我是否改变,我的计划都能达到50:50获胜的结果.这是它的代码(原谅我的长度):

class Program
{
    static void Main(string[] args)
    {
        Random rand = new Random();

        int noSwitchWins = RunGames(rand, false, 10000);
        int switchWins = RunGames(rand, true, 10000);

        Console.WriteLine(string.Format("If you don't switch, you will win {0} out of 1000 games.", noSwitchWins));
        Console.WriteLine(string.Format("If you switch, you will win {0} out of 1000 games.", switchWins));

        Console.ReadLine();
    }

    static int RunGames(Random rand, bool doSwitch, int numberOfRuns)
    {
        int counter = 0;

        for (int i = 0; i < …
Run Code Online (Sandbox Code Playgroud)

c# probability

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

XMPP,WebSocket和其他问题

我现在的目标只是制作一款具有WhatsApp功能的Android应用程序(不一定是WhatsApp的克隆版;只是具有类似的,可能不那么好的功能).重要的是我认为群聊,在线/离线状态以及离线消息.

现在我主要知道有一个WebSocket服务器的可能性(因为我作为一个实时解决方案介绍它可以让我开启无限的可能性),我之前测试过 - 它看起来不错.但是,我面临以下问题:

  1. 我不知道如何管理在线/离线存在; 我必须自己实施吗?如果他的朋友仍然连接,也许Android客户端每30秒查询一次服务器...
  2. 离线消息怎么样?如果一个特定的人不接,该消息不会被交付给他.然后消息是否需要存储在某个地方(比如MSSQL),然后当人登录客户端时会自动检索来自服务器的所有离线消息?
  3. 小组聊天怎么样?我不确定WebSocket是如何实现的,我是否必须单独实现它?这意味着需要处理很多商业逻辑(以及出现错误的大量空间)......

我知道有一个名为XMPP的协议(并且它与WebSocket完全不同)但我不确定它与我的问题有什么关系.XMPP是我的银弹(也就是那里有.NET库,它们可以为我实现大部分吗?).我也听说过Comet,但我不知道它有什么关系......

有很多缺失的部分,我认为实现我的聊天服务器/客户端将是一块蛋糕,但显然不是这样.任何有经验的人都可以给我一些反馈意见吗?

.net android chat xmpp websocket

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

空结合运算符

我有以下代码:

decimal? a = 2m;
decimal? b = 2m;
decimal c = a ?? 1m * b ?? 1m;
Run Code Online (Sandbox Code Playgroud)

由于双方ab已填写,我希望c给我的结果4.

但是,我得到的结果是2,在这种情况下b取为1而不是2.

有谁知道这种行为背后的原因是什么?

c# null-coalescing-operator

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