小编Dan*_*ell的帖子

我可以和Microsoft.AspNet.WebApi.Client一起安装ravendb客户端吗?

我正在尝试ASP.NET MVC4 Web API项目.我正在尝试通过nuget安装ravendb客户端.这是错误:

Attempting to resolve dependency 'NLog (= 2.0.0.2000)'.
Successfully installed 'Newtonsoft.Json 4.0.8'.
Successfully installed 'NLog 2.0.0.2000'.
Successfully installed 'RavenDB.Client 1.0.960'.
Install failed. Rolling back...
Updating 'Newtonsoft.Json 4.5.1' to 'Newtonsoft.Json 4.0.8' failed. Unable to find a version of 'Microsoft.AspNet.WebApi.Client' that is compatible with 'Newtonsoft.Json 4.0.8'.
Run Code Online (Sandbox Code Playgroud)

所以我可以看到Microsoft ASP.NET Web API客户端库(我认为这是我安装的:http://nuget.org/packages/Microsoft.AspNet.WebApi.Client)依赖于Newtonsoft.Json(≥ 4.5.1)

这说ravendb客户端安装需要(= 4.0.8)http://nuget.org/packages/RavenDB.Client/1.0.960

所以我看了,这个问题非常相似:Nuget包依赖.它的运作方式是否应该如此?但这有点老了,看起来问题有所不同 - 这里Raven确实似乎需要Newtonsoft.Json 4.0.8

所以我的问题是,这可能吗?有没有办法(可能从命令行/通过控制台)我可以并排安装这两件事.如何让Microsoft.AspNet.WebApi.Client与Newtonsoft.Json很好地配合?


编辑:此问题和解决方案已过时.自此问题发布以来,已有四个稳定的RavenDB版本.最新的稳定版本实际上将修复此问题,并且不应仅仅为了解决此问题而尝试使用不稳定版本.

dependencies ravendb nuget asp.net-mvc-4 asp.net-web-api

20
推荐指数
2
解决办法
2121
查看次数

由于使用了XML/ANSI_NULLS,QUOTED_IDENTIFIER选项,SQL Server存储过程失败

我有一个存储过程,它接受XML参数并将数据插入到多个表中.如果我使用SSMS查询窗口将存储过程运行到数据库中,一切正常.但是,我们有一个自定义安装程序,用于将存储过程部署到数据库,当使用它时,sp的执行失败并显示以下错误:

INSERT failed because the following SET options have incorrect settings:
'ANSI_NULLS, QUOTED_IDENTIFIER'. Verify that SET options are correct for use with
indexed views and/or indexes on computed columns and/or query notifications 
and/or xml data type methods.
Run Code Online (Sandbox Code Playgroud)

在存储过程中编写脚本时,自定义安装程序不使用正确的设置.

在sp中设置这些(SET ARITHABORT ON; SET QUOTED_IDENTIFIER ON; SET ANSI_NULLS ON;)无效:

在调用代码中的sp之前,我还尝试为open连接设置这些选项.这再次没有达到预期的效果.

在sp运行到数据库,与数据库连接的设置似乎很重要,而不是使用sp时的设置.

我已经通过在SSMS选项中使用这些设置进行了实验,这似乎就是这种情况.我希望有人确认这是绝对的情况(如果有一种方法我会喜欢听到它,但我没有希望)

不幸的是,改变安装程序目前不是我的选择,所以我期待不得不回滚几周的工作; 所以,如果我必须这样做,我想确定(并有一些证据支持我),这是唯一的选择

xml sql t-sql sql-server stored-procedures

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

使用HttpWebRequest时出现500内部服务器错误,如何才能获得真正的错误?

我正在尝试改进为响应应用程序中处理的错误而提供的信息.

这是代码:

Try
        httpRequestObj = HttpWebRequest.Create(strRequest)
        httpRequestObj.Method = "GET"
        httpRequestObj.UseDefaultCredentials = True
*       httpResponse = httpRequestObj.GetResponse
        Using reader As StreamReader = New StreamReader(httpResponse.GetResponseStream())
            strXML = reader.ReadToEnd()
        End Using
    Catch ex As WebException
        'do something with ex
    End Try
Run Code Online (Sandbox Code Playgroud)

webexception抛出在*行上

目前,我在Exception中看到的是"远程服务器返回错误:(500)内部服务器错误".我在调试中查看了异常,但我需要的信息不存在 - 我想应该读入响应以查看该信息,但它永远不会那么远.

如果我接受请求并将其直接粘贴到我的浏览器中,我可以看到从我正在调用的API返回的XML格式的错误详细信息,如下所示:

<Error>
  <description>info I want to get to here</description> 
  <detail /> 
  <code>info I want to get to here</code> 
  <source /> 
  <category>info I want to get to here</category> 
  <file>info I want to get to here</file> 
  <line>info I want to …
Run Code Online (Sandbox Code Playgroud)

http

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

将经典的asp页面映射到IIS中的.net

我正在尝试映射由.net处理的经典asp页面的请求,以便它通过自定义的httpmodule运行.

在IIS中我已经重新映射了对aspnet_isapi.dll的asp请求 - 我确信我已经做到了这一点

现在在我的测试应用程序中,我收到此错误:

Server Error in '/TestASPRedirect' Application.
--------------------------------------------------------------------------------

This type of page is not served. 
Description: The type of page you have requested is not served because it has been explicitly forbidden.  The extension '.asp' may be incorrect.   Please review the URL below and make sure that it is spelled correctly. 

Requested URL: /testaspredirect/test.asp
Run Code Online (Sandbox Code Playgroud)

在线搜索此错误显示有大量人员遇到cassini问题,但这并不是真正相关,我在XP dev机器上的IIS 5.1上进行测试,并且在IIS6上测试也得到了相同的错误.

我已按照添加和注册httphandler的说明进行操作(请参阅http://support.microsoft.com/default.aspx?scid=kb;en-us;Q308001),但我不知道在ProcessRequest例程中放入什么确保传递请求.什么是默认的.net httphandler,我可以在web.config中映射到这个吗:所以类似于:

<httpHandlers>
     <add verb="*" path="*.asp" type="standard.nethttphandler"/>
</httpHandlers>
Run Code Online (Sandbox Code Playgroud)

我怎么告诉asp.net它需要传递ASP请求而不是阻止?

asp.net iis wildcard-mapping asp-classic

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

无法在SQL Server 2005中删除约束,"无法删除约束.请参阅先前的错误"

我试图在数据库表上删除约束,例如:

ALTER TABLE MyTable drop CONSTRAINT FK_MyTable_AnotherTable
Run Code Online (Sandbox Code Playgroud)

但执行只是运行并运行.如果我停止它,我看到:

Msg 3727, Level 16, State 0, Line 2
Could not drop constraint. See previous errors.
Run Code Online (Sandbox Code Playgroud)

Web搜索会抛出各种页面,但请注意约束已正确命名,我尝试使用正确的名称将其删除

sql sql-server constraints alter-table

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

修改SQL Server中的XML以添加根节点

为了首先给出这个问题的一些背景知识,我正在重写一些当前循环遍历某些xml的代码,在每个循环结束时对一个表进行插入 - 用一个带有xml参数的sp替换并在一个中插入一个go,'将xml'粉碎成表.

主Shred已成功完成,但目前其中一列用于存储整个节点.我已经能够计算出这个(几乎)所需的查询,但它错过了节点的根部分.我得出的结论是,我的查询和我能得到的一样好,而且我正在寻找一种方法然后执行更新语句以将根节点恢复到那里.

所以我的xml是形式的;

<xml>
<Items>
<Item>
    <node1>...</node1><node2>..<node2>.....<noden>...<noden>
<Item>
<Item>
    <node1>...</node1><node2>..<node2>.....<noden>...<noden>
<Item>
<Item>
    <node1>...</node1><node2>..<node2>.....<noden>...<noden>
<Item>
......
<Items>
</xml>
Run Code Online (Sandbox Code Playgroud)

因此,基本的碎化将node1中的值放入column1,node2放入column2等.insert语句看起来像;

INSERT INTO mytable col1, col2,...etc.....,wholenodecolumn
Select  
doc.col.value('node1[1]', 'int') column1,
doc.col.value('node2[1]', 'varchar(50)') column2,
....etc......,
doc.col.query('*')--this is the query for getting the whole node
FROM @xml.nodes('//Items/Item') doc(col)
Run Code Online (Sandbox Code Playgroud)

最终在整个字节列中的XML是形式的;

<node1>...</node1><node2>..<node2>.....<noden>...<noden>
Run Code Online (Sandbox Code Playgroud)

但我需要它的形式

<Item><node1>...</node1><node2>..<node2>.....<noden>...<noden></Item>
Run Code Online (Sandbox Code Playgroud)

现有代码(很多代码)依赖于此列中的xml具有正确的形式.

那么有人可能会看到如何修改doc.col.query('*')以获得所需的结果?

无论如何,我放弃了修改查询,并试图想出其他方法来完成最终结果.我现在看的是插入后的更新 - 类似于;

update mytable set wholenodecolumn.modify('insert <Item> as first before * ')
Run Code Online (Sandbox Code Playgroud)

如果我可以这样做

 .modify('insert </Item> as last after * ')  
Run Code Online (Sandbox Code Playgroud)

这样会很好,但一次做1不是一个选项,因为XML无效

XQuery [mytable.wholenodecolumn.modify()]: Expected end tag …
Run Code Online (Sandbox Code Playgroud)

xml sql-server xpath shred

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

使用SQL Server管理对象(SMO)获取列的长度

我正在编写T4模板来生成CRUD存储过程等

我正在使用SMO循环遍历表的列:

For Each column As Column In table.Columns
    WriteLine("@" & column.Name & " " & column.DataType.Name & ", ")
Next
Run Code Online (Sandbox Code Playgroud)

我的问题是如何找到varchar列的长度?列上似乎没有任何Length/MaxLength etc属性.

我正在使用http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.column_members.aspx作为参考

sql-server smo

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

我可以根据变量属性在XPath中选择吗?

我认为这是不可能的,但希望有一个明确的答案.

XML:

  <agentlang>French</agentlang>
  ...
  <books>
    <book>
      <title>My Book</title>
      <author>Me</author>
    </book>
    <book>
      <title>XPath 101</title>
      <author>You</author>
  </book>
  ...
 </books>
 .....
 <translations>
    <translation English="title" French="titre" German="Titel" />
    <translation English="author" French="auteur" German="Autor" />
 </translations>
Run Code Online (Sandbox Code Playgroud)

然后在XSL中有一个主要书籍信息的简单转换,但我希望根据翻译xml翻译标题 - 这样的东西将起作用:

<xsl:value-of select="//translation[@English='title']/@French"/>
<xsl:value-of select="//translation[@English='Author']/@French"/>
Run Code Online (Sandbox Code Playgroud)

但我想用XML中的agentlang值替换@French属性

我正在使用MSXML/XSLT 1.0

有什么办法可以做到吗?

xslt xpath xpath-1.0 xslt-1.0

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