我有一个对象列表,我想用整数参数过滤
List<testObject> objectList = new List<testObject>();
// populate objectList with testObjects
objectList.FindAll(GroupLevel0);
private static bool GroupLevel0(testObject item)
{ return item._groupLevel == 0; }
private class testObject
{
public string _FieldSQL = null;
public int _groupLevel;
}
Run Code Online (Sandbox Code Playgroud)
我要做的是让GroupLevel0接受一个整数作为参数而不是硬编码为0.我在.NET 2.0中工作,所以lambda表达式是不行的.甚至可以将参数传递给谓词吗?
谢谢,
我针对我创建的对象运行了VS 2008代码分析工具,并收到了以下建议......
警告147 CA1021:Microsoft.Design:考虑一种不要求'returnValue'为out参数的设计.
我发现"out"参数相当有用,并没有意识到它们被认为是一种不受欢迎的设计实践.我想知道是否有人可以了解我收到此警告的原因?如果这是不好的做法?为什么?什么是好的做法?
我很感激任何建议.
我在Visual Studio 2010中遇到"添加配置转换"选项的问题.我有一个ASP.NET 4.0 Web项目,其中定义了以下4种配置模式:
当我右键单击web.config并选择"Add Config Transforms"时,只会添加以下两个配置转换:
"PreProduction"和"Local"文件未显示.是否有一个我错过的设置会导致这两个文件现在出现?
我是Team Foundation Server的新手,我正在尝试使用c#以编程方式连接到项目.我有以下代码块...
string serverName = "http://tfs01:8080";
TeamFoundationServer tfs = new TeamFoundationServer(serverName);
VersionControlServer version = (VersionControlServer)tfs.GetService(typeof (VersionControlServer));
Workspace workspace = version.GetWorkspace("Test", version.AuthenticatedUser);
MessageBox.Show(workspace.Name);
Run Code Online (Sandbox Code Playgroud)
当我执行代码时,我收到以下错误...
TF14061: The workspace Test;vercuskis does not exist.
Run Code Online (Sandbox Code Playgroud)
"测试"项目不在根目录下,可以从VS 2008团队资源管理器中访问,我有安全访问权限,我用它来检查和输出代码就好了
我不确定我的代码中是否正确引用了"Test"项目.我正在寻找一个如何从TFS根目录引用项目名称的示例.
谢谢,
我们有一段代码可以检测旧URL并执行重定向,如下所示:
Response.Clear();
Response.StatusCode = 301;
Response.Status = "301 Moved Permanently";
try
{
Response.AddHeader("Location", MyLink.GetFullPath());
} catch
{
Response.StatusCode = 302;
Response.Status = "302 Moved Temporarily";
Response.AddHeader("Location", "/");
}
Response.End();
Run Code Online (Sandbox Code Playgroud)
本质上发生的是尝试301永久重定向,如果不成功则将"302 Moved Temporarily"抛出到默认主页.
问题:我遇到的问题如下.如果输入了URL(例如"/ product/ABC123").301重定向失败URL和302重定向在catch被执行,但是原来的URL("/产物/ ABC123")仍然在背景中执行.当我在调试器中运行网站时,302重定向工作正常并且默认主页出现,然后半秒后执行补充页面并由于原始URL为no而出现服务器500错误更长的可接受
我的问题如下:如何完全停止原始请求,让302重定向完成它需要做的事情.我试过"HttpContext.ApplicationInstance.CompleteRequest();" 在"Response.End()"下面,但它没有停止原始请求.
编辑:重定向代码正在从Controller类的Index方法执行.
我正在开发一个绘制简单点网格的应用程序.我希望鼠标在网格上的点之间捕捉,最终在网格上绘制线条.
我有一个方法,它接收当前鼠标位置(X,Y)并计算最近的网格坐标.
当我创建一个事件并尝试将鼠标移动到新坐标时,整个系统变得不稳定.鼠标不会在网格点之间平滑地捕捉.
我已经复制了下面的代码示例来说明我正在尝试做什么.有没有人有任何建议他们可以提供我如何消除鼠标运动中的跳跃?
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace GridTest
{
public partial class Form1 : Form
{
Graphics g;
const int gridsize = 20;
public Form1()
{
InitializeComponent();
g = splitContainer1.Panel2.CreateGraphics();
splitContainer1.Panel2.Invalidate();
}
private void splitContainer1_Panel2_Paint(object sender, PaintEventArgs e)
{
Drawgrid();
}
private void Drawgrid()
{
for (int x = 0; x < splitContainer1.Panel2.ClientSize.Width; x += gridsize)
{
for (int y = 0; y < splitContainer1.Panel2.ClientSize.Height; y …Run Code Online (Sandbox Code Playgroud) 我正在使用Microsoft.Practices.EnterpriseLibrary数据库工具,我只使用连接字符串信息创建新数据库时遇到问题.
理想情况下,我想做以下事情:
Database dbEngine = DatabaseFactory.CreateDatabase(
"Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;");
Run Code Online (Sandbox Code Playgroud)
是否可以仅使用连接字符串创建数据库?
如果是这样,怎么能实现呢?
database connection-string enterprise-library database-connection
我在我的c#代码中使用odbc查询dbase .dbf文件,并且在查询中使用'where'子句时出现问题.如果我只是"从FILE.DBF中选择*",我可以检索和阅读记录,我在网页上看到的每个例子,当我搜索答案时都显示了那么多的语法.我已经尝试了多种方法来构造带有'where'的select语句,到目前为止它们都失败了.所以,我想知道我是否不能在针对dbase文件的查询中使用'where'子句,或者我是否还没有找到正确的语法.
我试过了:
select * from FILE.DBF where GROUP = 21;
select * from FILE.DBF where GROUP = '21';
select * from FILE.DBF where GROUP = "21";
Run Code Online (Sandbox Code Playgroud)
所有这些的结果是错误:错误[42000] [Microsoft] [ODBC dBase驱动程序] WHERE子句中的语法错误.
任何帮助将不胜感激.
我有以下代码块连接到安全服务(支付交易网关),传入一些字段($ postData)并收到响应($ returnValue).
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://secure.service.com/data');
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
if ($returnValue = curl_exec($ch))
{
$error = curl_error($ch);
}
Run Code Online (Sandbox Code Playgroud)
当我显示$ returnValue的内容时......它们显示如下:
HTTP/1.0 200 OK批准日期:2011年8月10日星期三09:24:15 GMT连接:关闭内容类型:application/x-www-form-urlencoded内容长度:182 avs_code = X&cvv2_code = P&status_code = 1&processor = TEST&auth_code = 999999&settle_amount = 2000&settle_currency = USD&TRANS_ID = 120741127516&auth_msg = TEST + APPROVED&auth_date = 2011-08-10 + 09:24:15
是否存在将此结果字符串拆分为其组成部分的方法或CURL调用?还是我需要自己写的东西?我需要获取响应代码(200),批准/拒绝部分(已批准)和查询字符串(avs_code ....).我尝试查看curl_getinfo,但这只是获取HTTP响应代码,而不是批准/拒绝或查询字符串值.
我是PHP的新手,所以如果我错过了一个明显的方法调用或CURL参数,请告诉我.