Tag: C#的

参数化查询与SQL注入

我是新来的Asp.net,我刚刚开始与类工作。 我最近创build了一个类来处理我的大部分SQL查询,这样我就不必重复build立所有文件的新连接。 我创build的方法之一是将SQL查询作为参数,并返回结果。 我知道我应该使用参数化查询来避免SQL注入。 我的问题是,我作为一个stringparameter passing查询时如何做到这一点? 例如,以下是我将要调用的方法: public static DataTable SqlDataTable(string sql) { using (SqlConnection conn = new SqlConnection(DatabaseConnectionString)) { SqlCommand cmd = new SqlCommand(sql, conn); cmd.Connection.Open(); DataTable TempTable = new DataTable(); TempTable.Load(cmd.ExecuteReader()); return TempTable; } } 所以从另一个文件我想使用这样的方法: DataTable dt = new DataTable(); dt = SqlComm.SqlDataTable("SELECT * FROM Users WHERE UserName='" + login.Text + "' […]

在初始化中使用新声明的variables(int x = x + 1)?

我偶然发现了一个让我感到惊讶的行为: 写作时: int x = x+1; 在一个C / C ++程序(甚至更复杂的expression式涉及新创build的variablesx)我的gcc / g ++编译没有错误。 在上面的情况中,X是1之后。 请注意,以前的声明中没有variablesx的范围。 所以我想知道这是否是正确的行为(甚至可能在某些情况下是有用的),或者只是一个parsing器与我的gcc版本或gcc一般。 顺便说一句:以下不起作用: int x++;

##对于C(C ++)预处理器来说意味着什么?

我有一个C程序如下: #define f(g,g2) g##g2 main() { int var12=100; printf("%d",f(var,12)); } 当我只运行预处理器时,将其扩展为 { int var12=100; printf("%d",var12); } 这就是输出为100的原因。 任何人都可以告诉我/为什么预处理器将var##12 to var12扩展var##12 to var12 ?

禁用GCC中的所有优化选项

使用GCC编译C程序的默认优化级别是-O0。 根据GCC文档closures所有优化。 例如: gcc -O0 test.c 但是,要检查-O0是否真的closures了所有的优化 。 我执行了这个命令: gcc -Q -O0 –help=optimizers 在这里,我有点惊讶。 我有大约50个选项启用。 然后,我检查了使用这个传递给gcc的默认参数: gcc -v 我懂了: Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper Target: x86_64-linux-gnu Configured with: ../src/configure -v –with-pkgversion='Ubuntu 4.8.4- 2ubuntu1~14.04' –with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs — enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ –prefix=/usr — program-suffix=-4.8 –enable-shared –enable-linker-build-id — libexecdir=/usr/lib –without-included-gettext –enable-threads=posix –with- gxx-include-dir=/usr/include/c++/4.8 –libdir=/usr/lib –enable-nls –with- sysroot=/ –enable-clocale=gnu –enable-libstdcxx-debug –enable-libstdcxx- time=yes […]

'Receiver(<ViewController>)没有标识符“addSegue”

我有一个导航控制器之间有一个segue链接,称为“addSegue”。 当我点击tableView单元格,虽然应用程序崩溃,我得到下面的错误: Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Receiver (<MSAddFriendsViewController: 0x98cc340>) has no segue with identifier 'addSegue' 我不认为我的代码有任何问题。 这里是我有showSegueWithIdentifier行的showSegueWithIdentifier : – (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSMutableSet *selectedUsers = [NSMutableSet set]; [self.tableView deselectRowAtIndexPath:indexPath animated:NO]; UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; cell.accessoryType = UITableViewCellAccessoryCheckmark; PFRelation *friendsRelation = [self.currentUser relationforKey:@"friendsRelation"]; PFUser *user = [self.allUsers objectAtIndex:indexPath.row]; [friendsRelation […]

一个variables的c ++多重定义

我有4个文件(2个头文件和2个代码文件)。 FileA.cpp,FileA.h,FileB.cpp,FileB.h FileA.cpp: #include "FileA.h" int main() { hello(); return 0; } void hello() { //code here } FileA.h: #ifndef FILEA_H_ #define FILEA_H_ #include "FileB.h" void hello(); #endif /* FILEA_H_ */ FileB.cpp: #include "FileB.h" void world() { //more code; } FileB.h: #ifndef FILEB_H_ #define FILEB_H_ int wat; void world(); #endif /* FILEB_H_ */ 当我尝试编译(与日食)时,我得到了“wat'的多重定义”而我不知道为什么,它似乎应该工作得很好。

在printf中解释评估顺序

可能重复: C函数调用之前的参数评估顺序 main() { int i=5; printf("%d%d%d%d%d%d",i++,i–,++i,–i,i); } 输出是45545,但我不知道它是如何工作的。 有人说函数调用中的参数是从左到右推入堆栈的。

将RGB颜色转换为CMYK?

我正在寻找一种algorithm来将RGB颜色转换为CMYK。 Photoshop正在执行下面的转换: R = 220 G = 233 B = 174 C = 15 M = 0 Y = 40 K = 0

用等距顶点制作一个球体

为了检查碰撞的目的,我试图做一个球形的射线爆发,但是根据每个射线在什么地方或什么地方击中了具体的相互作用。 因此,我为什么使用光线,而不是像OverlapSphere这样简单的东西。 我正在寻找如何制作一个球体的原因是因为我可以对我的光线使用相同的math,让它们到达球体所在的顶点。 但是我所能find的制造球体的方法都是靠近极点,这很有意义,因为它很容易做到。 但是,正如你可以想象的那样,它对我目前的项目没有什么用处。 TL; DR:如何制作等距顶点的球体? 如果它不是完全等距的话,它只需要非常接近。 如果发生这种情况,那么如果可以给出多less区别,以及在哪里适用,那将是非常好的。 额外的笔记:我已经看过这个和这个 ,但math已经超出了我的头,所以我一直在寻找的东西可能会一直在我面前凝视着我。

UWP启用本地networking环回

我写了一个UWP应用程序,生成和安装.appxbundle后,每次启动应用程序,我得到一个net_http_client_execution_error 。 在Visual Studio 2015中启动时,该应用程序启动并运行良好。因此,如果我debugging应用程序,则不会有机会解决问题。 更新: 默认情况下,Windows限制应用程序到达本地主机(127.0.0.1)。 我在那里运行一个沙发数据库。 这个沙发数据库应该运行在那里为我们的costumers以及。 是否有可能允许应用程序到达本地主机(启用本地networking回送)?