我正在寻找一种方法将不同行的字符串聚合成一行.我想在很多不同的地方做这个,所以有一个功能来促进这将是很好的.我尝试使用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定义的聚合函数作为替代COALESCE
和FOR XML
,但显然SQL Azure 不支持CLR定义的东西,这对我来说很痛苦因为我知道能够使用它会解决很多问题.我的问题.
是否有任何可能的解决方法,或类似的最佳方法(可能不如CLR那样最优,但嘿,我会采取我能得到的)我可以用来聚合我的东西?
在昨天的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
我检查过的命名空间有关; 它仍然与该项目有关References
.在Windows Update期间我的MVC项目可能出现什么问题,我该如何纠正它?
以下是指示今天管理的更新的日志:
REPLACE INTO
MySQL中的函数以删除和插入行的方式工作.在我的表中,主键(id
)是自动递增的,所以我期望它删除然后id
在数据库的尾部插入一个表.
但是,它出乎意料并插入相同的id
!这是预期的行为,还是我在这里遗漏了什么?(我id
在调用REPLACE INTO
语句时没有设置)
我目前正在开发一个网络连接不佳的环境.我的应用有助于为用户自动下载所需的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) 我一直在尝试打包/发布我的Azure项目一段时间(但无济于事).我尝试过以下方法:
如何规避此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]
这非常令人沮丧,如果有人能给我一些友好的建议,我将非常感激!
我目前在为项目使用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然后重写所有查询逻辑肯定是一件麻烦事.
我明白存在INSERT IGNORE
和INSERT ... ON DUPLICATE KEY UPDATE
.但是,当存在重复键时,我想对INSERT
临时表执行操作以保留已违反的唯一键的记录,以便我可以将其输出给用户.
有什么方法可以ON DUPLICATE INSERT
吗?如果它有帮助,我正在尝试进行批量插入.
我试图模拟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) 我现在的目标只是制作一款具有WhatsApp功能的Android应用程序(不一定是WhatsApp的克隆版;只是具有类似的,可能不那么好的功能).重要的是我认为群聊,在线/离线状态以及离线消息.
现在我主要知道有一个WebSocket服务器的可能性(因为我作为一个实时解决方案介绍它可以让我开启无限的可能性),我之前测试过 - 它看起来不错.但是,我面临以下问题:
我知道有一个名为XMPP的协议(并且它与WebSocket完全不同)但我不确定它与我的问题有什么关系.XMPP是我的银弹(也就是那里有.NET库,它们可以为我实现大部分吗?).我也听说过Comet,但我不知道它有什么关系......
有很多缺失的部分,我认为实现我的聊天服务器/客户端将是一块蛋糕,但显然不是这样.任何有经验的人都可以给我一些反馈意见吗?
我有以下代码:
decimal? a = 2m;
decimal? b = 2m;
decimal c = a ?? 1m * b ?? 1m;
Run Code Online (Sandbox Code Playgroud)
由于双方a
并b
已填写,我希望c
给我的结果4.
但是,我得到的结果是2,在这种情况下b
取为1而不是2.
有谁知道这种行为背后的原因是什么?
c# ×5
sql ×4
.net ×3
azure ×2
mysql ×2
sql-server ×2
android ×1
asp.net-mvc ×1
chat ×1
duplicates ×1
insert ×1
linq ×1
linq-to-sql ×1
msbuild ×1
namespaces ×1
probability ×1
rest ×1
sql-delete ×1
sql-insert ×1
websocket ×1
xmpp ×1