我们正在为我们的网站安装一个新论坛(yaf).其中一个存储过程非常慢 - 实际上它总是在浏览器中超时.如果我在MSSMS中运行它需要将近10分钟才能完成.如果花了这么长时间,有没有办法找出这个查询的哪个部分?
查询:
DECLARE @BoardID int
DECLARE @UserID int
DECLARE @CategoryID int = null
DECLARE @ParentID int = null
SET @BoardID = 1
SET @UserID = 2
select
a.CategoryID,
Category = a.Name,
ForumID = b.ForumID,
Forum = b.Name,
Description,
Topics = [dbo].[yaf_forum_topics](b.ForumID),
Posts = [dbo].[yaf_forum_posts](b.ForumID),
Subforums = [dbo].[yaf_forum_subforums](b.ForumID, @UserID),
LastPosted = t.LastPosted,
LastMessageID = t.LastMessageID,
LastUserID = t.LastUserID,
LastUser = IsNull(t.LastUserName,(select Name from [dbo].[yaf_User] x where x.UserID=t.LastUserID)),
LastTopicID = t.TopicID,
LastTopicName = t.Topic,
b.Flags,
Viewing = (select count(1) from …Run Code Online (Sandbox Code Playgroud) 我想我的想法是如此忙于IIS和Web应用程序,我想不出有什么理由去解决使用自托管WCF服务的麻烦.我一直有IIS的可用性,因此创建一个自托管的WCF服务似乎比我想要的工作更多.我为什么要这样做?
我正在尝试加载解析Google Weather API响应(中文回复).
这是API调用.
// This code fails with the following error
$xml = simplexml_load_file('http://www.google.com/ig/api?weather=11791&hl=zh-CN');
Run Code Online (Sandbox Code Playgroud)
(!)警告:simplexml_load_string()[function.simplexml-load-string]:实体:第1行:解析器错误:输入不正确UTF-8,表示编码!字节:第11行的C:\ htdocs\weather.php中的0xB6 0xE0 0xD4 0xC6
为什么加载此响应失败?
如何对响应进行编码/解码以便simplexml正确加载?
编辑:这是代码和输出.
<?php
$googleData = file_get_contents('http://www.google.com/ig/api?weather=11102&hl=zh-CN');
$xml = simplexml_load_string($googleData);
Run Code Online (Sandbox Code Playgroud)
(!)警告:simplexml_load_string()[function.simplexml-load-string]:实体:第1行:解析器错误:输入不正确UTF-8,表示编码!字节:0xB6 0xE0 0xD4 0xC6在C:\ htdocs\test4.php第3行调用堆栈时间内存函数位置1 0.0020 314264 {main}()..\test4.php:0 2 0.1535 317520 simplexml_load_string(string(1364)) ..\test4.php:3
(!)警告:simplexml_load_string()[function.simplexml-load-string]:t_system data ="SI"/>
(!)警告:simplexml_load_string()[function.simplexml-load-string]:^在第3行的C:\ htdocs\test4.php中调用堆栈时间内存函数位置1 0.0020 314264 {main}()..\test4. php:0 2 0.1535 317520 simplexml_load_string(string(1364))..\test4.php:3
假设我有一个带有以下类型签名的函数:
g :: a -> a -> a -> b
Run Code Online (Sandbox Code Playgroud)
我还有一个as-let的名单xs- 我知道它至少包含三个项目.我想申请g前三项xs.我知道我可以定义如下的组合器:
($$$) :: (a -> a -> a -> b) -> [a] -> b
f $$$ (x:y:z:_) = f x y z
Run Code Online (Sandbox Code Playgroud)
然后我可以使用g $$$ xs.这$$$有点像uncurry,但对于具有相同类型的三个参数和列表而不是元组的函数.
有没有办法使用标准组合器以惯用方式执行此操作?或者更确切地说,在Haskell中最常用的方法是什么?我想尝试pointfree对非缀版本$$$会给我从哪里开始有些想法,但产量与10个憎恶的flipS,极少数headS和tailS和apS和28个括号.
(注意:我知道这首先不是一个非常糟糕的Haskelly事情,但是我遇到过几种似乎是合理解决方案的情况,特别是在使用Parsec时.我当然会接受"不要"T 曾经这样做是真正的代码",如果这是最好的答案,但我更愿意看到一些聪明的把戏涉及((->) r)单子或什么的.)
我在变量字符串中定义了大写字母,我想输出字母表中的下一个和前一个字母.例如,如果变量等于'C',我想输出'B'和'D'.
我正在使用Python(和Django,如果这很重要)在Google App Engine上开发应用程序.
我应该帮助哪个模拟对象框架协助进行单元测试?我看到有很多独立项目(即http://python-mock.sourceforge.net),但我不确定是否有可以使用的内置内容.
有任何想法吗?
我正在使用jquery .serializeArray()函数,我将它发送到服务器,这一切都很好.但是我需要在客户端更新一些序列化的东西.
因此,我不想在文本框上执行另一个选择器,而是将其从序列化数组中取出.
我不知道该怎么做
Product=Test&Qty=50
Run Code Online (Sandbox Code Playgroud)
所以说如果我有这样的东西.我可以做这样的事情
var sendFormData = form.serializeArray();
var val = sendFormData["Product"].value;
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.当我做这样的事情时,我才能让它工作
var sendFormData = form.serializeArray();
var val = sendFormData[0].value;
Run Code Online (Sandbox Code Playgroud)
我真的不想通过索引来做,因为这意味着如果订单改变,那么值可能都是错误的.如果你可以通过keyname这样做那么这不会是一个问题.
我正在探索MSMQ服务,我编写了一个简单的控制台客户端 - 服务器应用程序,它将每个客户端的击键发送到服务器.只要打一个控制字符(DEL,ESC,INS等)服务器理解抛出一个错误.但是,每当我键入空格字符时,服务器都会收到数据包,但不会抛出错误,也不会显示空格.
服务器:
namespace QIM
{
class Program
{
const string QUEUE = @".\Private$\qim";
static MessageQueue _mq;
static readonly object _mqLock = new object();
static XmlSerializer xs;
static void Main(string[] args)
{
lock (_mqLock)
{
if (!MessageQueue.Exists(QUEUE))
_mq = MessageQueue.Create(QUEUE);
else
_mq = new MessageQueue(QUEUE);
}
xs = new XmlSerializer(typeof(string));
_mq.BeginReceive(new TimeSpan(0, 1, 0), new object(), OnReceive);
while (Console.ReadKey().Key != ConsoleKey.Escape) { }
}
static void OnReceive(IAsyncResult result)
{
Message msg;
lock (_mqLock) …Run Code Online (Sandbox Code Playgroud) 我从Soap客户端请求得到了这个:
例外:SoapFault异常:[soap:Client]服务器无法读取请求.---> XML文档中存在错误(2,273).--->字符串'2010-5-24'不是有效的AllXsd值.在/path/filinet.php:21堆栈跟踪:#0 [内部函数]:SoapClient - > __ call('SubIdDetailsByO ...',数组)#1 /path/filinet.php(21):SoapClient-> SubIdDetailsByOfferId(数组)#2 {main}
好像我发送的值不正确,如何在php中的AllXsd格式化我的值?
这是我的代码:
<?php
$start = isset($_GET['start']) ? $_GET['start'] : date("Y-m-d");
$end = isset($_GET['end']) ? $_GET['end'] : date("Y-m-d");
//define parameter array
$param = array('userName'=>'user', 'password'=>'pass', 'startDate' => $start, 'endDate' => $end, 'promotionId' => '');
//Get wsdl path
$serverPath = "https://webservices.filinet.com/affiliate/reports.asmx?WSDL";
//Declare Soap client
$client = new SoapClient($serverPath);
try {
//make the call
$result = $client->SubIdDetailsByOfferId($param);
//If error found display error
if(isset($fault))
{
echo "Error: ". $fault;
}
//If no …Run Code Online (Sandbox Code Playgroud)