小编dav*_*ids的帖子

在MVC控制器中使用查询字符串变量

我是C#.net MVC的新手,我正在尝试添加FullCalendar到MVC应用程序.

FullCalendar脚本自动添加?start={}&end={}到URL ...这很好,但我不知道如何querystring在控制器中使用变量.

我在Webforms应用程序中使用的方法不起作用.我需要添加到控制器以访问querystring变量?

c# asp.net-mvc query-string

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

名称空间"System.Web"中不存在类型或命名空间名称"优化"

我正在部署一个新网站作为我的主要网站,它的工作非常精彩.

根网址下的所有应用程序都可以正常工作,除了一个.它是一个遗留系统(c#.net),使用频繁,遗憾的是,我无法访问源代码.

当我运行遗留应用程序www.mysite.com/crm时,出现以下错误:

Server Error in '/crm' Application.

Compilation Error

Description: An error occurred during the compilation of a resource required to 
service this request. Please review the following specific error details and modify 
your source code appropriately. 

Compiler Error Message: CS0234: The type or namespace name 'Optimization' does not 
exist in the namespace 'System.Web' (are you missing an assembly reference?)

Source Error:


Line 17:     <pages>
Line 18:       <namespaces>
Line 19:         <add namespace="System.Web.Optimization" />
Line 20:       </namespaces>
Line 21:     <controls> …
Run Code Online (Sandbox Code Playgroud)

.net html c#

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

web.config转换 - 从connectionstring部分删除注释

我在web.config中存储了几个不同的连接字符串,用于开发和测试.除了一个之外的所有内容都已注释掉,因此我可以根据需要更改信息

当我发布时,我想用connection:替换connectionStrings节点中的所有内容(包括注释):

<add name="myDb" connectionString="Data Source={SERVER};Initial Catalog=ManEx;User Id={USER};Password={PASSWORD};" providerName="System.Data.SqlClient"  />
<!--<add name="myDb" connectionString="Data Source={SERVER};Initial Catalog=ManEx;Integrated Security=True" providerName="System.Data.SqlClient" />-->
Run Code Online (Sandbox Code Playgroud)

我知道如何用这个改变活动字符串:

<add name="myDb"
     connectionString="Data Source={SERVER};Initial Catalog=ManEx;User Id={USER};Password={PASSWORD};"
     providerName="System.Data.SqlClient"
     xdt:Transform="Add" 
     xdt:Locator="Match(name)"/>
Run Code Online (Sandbox Code Playgroud)

但我不知道如何清除我不想要的评论,并添加我想要的评论.

有任何想法吗?

c# asp.net connection-string visual-studio web-config-transform

22
推荐指数
1
解决办法
6371
查看次数

TortoiseGit 1.7.8:"无法加载此密钥""同步"或"拉"?

当我尝试使用"Git Sync"然后"拉"时我收到错误:

无法加载此密钥(无法打开文件)

然后它尝试继续拉,我得到这个错误:

已断开连接:没有可用的支持身份验证方法(服务器已发送:公钥)

这种情况发生在我升级到1.7.8.0之后.之前一切都运转得很好.我可以成功地使用gitbash,所以我知道我可以连接.

我不确定发生了什么变化,或者我能做些什么来解决它.请帮忙!

其他步骤

我去了GIT文件夹并使用gitbash来检查git remote -v并收到:
.puttykeyfile
origin git@github.com: {name}/{repository} .git(fetch)
origin git@github.com: {name} /{repository}.git(推)

我认为这是正确的.

我检查了tortoisegit中的putty键设置.我有两个条目:

  1. .puttykeyfile - 在Remote中只有.puttykeyfile
  2. origin - 这似乎包含Remote,URL和Putty Key中的所有正确信息

当我在PuTTYGen中加载密钥时,它具有ssh-rsa 1024 ...密钥指纹.

pageant.exe正在运行,但现在不是,但它仍然无法正常工作

当它以前工作时,我在与我的密钥相同的文件夹中的git文件夹.现在我有3个,但是没有一个工作,如果我创建一个带有单个存储库和密钥的新git文件夹,它似乎不起作用.我不知道它是否会影响结果,但我想分享一下以防万一.

git tortoisegit

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

使用SQL返回JSON字符串

这是一个"最佳实践"问题.我们正在就此主题进行内部讨论,并希望得到更广泛受众的意见.

我需要将我的数据存储在MS SQL Server具有普通列和行的传统表中.我有时需要返回DataTable到我的Web应用程序,有时我需要返回一个JSON字符串.

目前,我将表返回到中间层并将其解析为JSON字符串.这似乎在大多数情况下运行良好,但偶尔会在大型数据集上花费一些时间(解析数据,而不是返回表).

我正在考虑修改存储过程以选择性地返回一个DataTable或一个JSON字符串.我只想@isJson bit在SP中添加一个参数.

如果用户想要字符串而不是表,则SP将执行如下查询:

DECLARE @result varchar(MAX)
SELECT @result = COALESCE(@results ',', '') + '{id:"' + colId + '",name:"' + colName + '"}'
    FROM MyTable
SELECT @result
Run Code Online (Sandbox Code Playgroud)

这会产生如下内容:

{id:"1342",name:"row1"},{id:"3424",name:"row2"}
Run Code Online (Sandbox Code Playgroud)

当然,用户也可以通过将false传递给@isJson参数来获取表.

我想清楚,数据存储不受影响,现有的任何视图和其他进程也不会受到影响.这只是对某些存储过程的结果的更改.

我的问题是:

  1. 有没有人在大型应用程序中尝试过这个?如果是这样,结果是什么?
  2. 您对这种方法有什么看法/期望?
  3. 除了以这种方式修改存储过程或解析中间层中的字符串之外,还有更好的方法从SQL Server中的表转到JSON吗?

c# asp.net-mvc json sql-server-2008

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

当SQL表不是一对一时,如何计算准时交付

我有以下两个表:

DueDates:

DECLARE @DueDates TABLE (
    uniqueln varchar(10),
    ship_dts smalldatetime,
    qty decimal(18,4))
INSERT INTO @DueDates
SELECT '51351621AS','1/1/2013',7
UNION ALL
SELECT '51351621AS','1/7/2013',7
UNION ALL
SELECT '51351621AS','1/14/2013',7
UNION ALL
SELECT '51351621AS','1/21/2013',7
UNION ALL
SELECT '51351621AS','1/28/2013',7
UNION ALL
SELECT 'V4351621AS','1/5/2013',10
UNION ALL
SELECT 'V4351621AS','1/10/2013',10
UNION ALL
SELECT 'V4351621AS','1/15/2013',10
UNION ALL
SELECT 'V4351621AS','1/20/2013',10
UNION ALL
SELECT 'V4351621AS','1/25/2013',10
Run Code Online (Sandbox Code Playgroud)

PlDetail

DECLARE @PlDetail TABLE (
    uniqueln varchar(10),
    shipdate smalldatetime,
    shippedqty decimal(18,4))
INSERT INTO @PlDetail
SELECT '51351621AS','1/1/2013',10
UNION ALL
SELECT '51351621AS','1/7/2013',10
UNION ALL
SELECT '51351621AS','1/14/2013',10
UNION ALL
SELECT …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2008

9
推荐指数
1
解决办法
1166
查看次数

Google Apps脚本cUrl请求

我很新Google Apps Script.我正在尝试创建一个脚本来从公共API中提取数据.

API文档表明可以像这样访问信息:

curl -H "Content-Type: application/json" -X GET 
--header "X-PW-AccessToken:<TOKEN>" \
--header "X-PW-Application:developer_api" \
--header "X-PW-UserEmail:<USER_EMAIL_ADDRESS>" \
https://api.prosperworks.com/developer_api/v1/leads/2
Run Code Online (Sandbox Code Playgroud)

我有这个功能设置Apps Script:

function myFunction() {
  var url = "https://api.prosperworks.com/developer_api/v1/leads/2";
  var headers = {
             "contentType": "application/json",
             "headers":{"X-PW-AccessToken": "<TOKEN>",
                        "X-PW-Application": "developer_api",
                        "X-PW-UserEmail": "<USER_EMAIL_ADDRESS>"}
             };

  var response = UrlFetchApp.fetch(url, headers);
  var text = response.getResponseCode();
  Logger.log(text);
}
Run Code Online (Sandbox Code Playgroud)

当我运行的代码,响应似乎是空的,但是text200.

在此输入图像描述

我能够打电话Postman并获得预期的JSON对象.

我做错了Apps Script什么?我如何访问该JSON对象?

curl google-apps-script

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

System.Net.Mail不会在生产中发送

我正在尝试在我的网站中实施"忘记密码"方法.它在调试中完美运行.使用相同的代码和数据库,但发布到我们的Web服务器时,它尝试发送消息时失败.

我得到的错误是:

There was an error sending you an email.
The specified string is not in the form required for an e-mail address.
Run Code Online (Sandbox Code Playgroud)

电子邮件是有效的,所以我不知道为什么它失败了.

因为它是一个实时环境,所以我不能单步执行代码来确切地知道它失败的原因和原因.我实现了数据库日志记录,因此我可以看到它在失败之前获得了多远,并且到目前为止它成功执行了所有代码:

 var smtp = new SmtpClient
 {
     Host = host,
     Port = port,
     EnableSsl = ssl,
     DeliveryMethod = SmtpDeliveryMethod.Network,
     UseDefaultCredentials = false,
     Credentials = new NetworkCredential(fromAddress.Address, fromPw)
 };
 using (var message = new MailMessage()
 {
     Subject = subject,
     Body = body,
     IsBodyHtml = ishtml,
     From = fromAddress
 })

 {
     foreach (MailAddress t in toCol)
     { message.To.Add(t); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc sql-server-2008

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

查找最大的Dictionary <int,string>键,其值小于搜索值

我有这样Dictionary<int,string>的升序键:

var myDictionary = new Dictionary<int,string>
{
    {750,"one"},
    {1500,"two"},
    {2500,"three"},
    {5000,"four"},
    {10000,"five"},
    {25000,"six"}
}
Run Code Online (Sandbox Code Playgroud)

我有 var myValue = 3000.52

我需要找到myDictionary小于我的值的最大键.在这种情况下,我需要返回2500.

我试过了:

foreach (var key in myDictionary.Keys.Where(key => key <= myValue))
{

}
Run Code Online (Sandbox Code Playgroud)

但是,正如您所料,所有较小的值也匹配.

如何找到小于我的搜索值的最大密钥?

c# dictionary

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

使用包含时,Apps脚本边栏引用错误

我创建了一个Google Apps Script加载项,可以在点击时显示侧边栏:

function displayPage_() {
  getScriptProperties_()
  var htmlTemplate = HtmlService.createTemplateFromFile('PAGE');
  var html = htmlTemplate.evaluate()
          .setTitle('Connector');
  SpreadsheetApp.getUi().showSidebar(html);
}   
Run Code Online (Sandbox Code Playgroud)

PAGE.html只要它是简单的html,这就成功加载了文件.但是,当我尝试添加include如下:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <?!= include("STYLESHEET"); ?>
  </head>
  <body>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

它抛出此错误:

[17-02-09 08:55:50:239 MST] Execution failed: ReferenceError: "include" is not defined.
Run Code Online (Sandbox Code Playgroud)

什么在include它总是失败并不重要.

我以前做过这件事并且有效.据我所知,我的设置就像其他项目一样,但它在这个项目中不起作用.我假设我忘了启用某些东西,但不知道如何分辨遗漏的内容,因为成绩单含糊不清.

我错过了什么?或者,做错了?

sidebar google-apps-script

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