小编ami*_*tel的帖子

如何将DataTable转换为类Object

我已经开发了一个可以在任何地方返回DataTable的应用程序.

现在我的客户端想要转换(使用服务堆栈使用某些部分),所以我需要在我的应用程序中返回DTO(对象).

我不想更改现有的存储过程,甚至不想尽可能多地使用LINQ(我对LINQ并不太了解).

对于小功能,我可以使用Linq没问题.

我的问题是:我如何改变我DataTable对该类的对象?

示例代码如下

string s = DateTime.Now.ToString();
DataTable dt = new DataTable();

dt.Columns.Add("id");
dt.Columns.Add("name");

for (int i = 0; i < 5000000; i++)
{
    DataRow dr = dt.NewRow();
    dr["id"] = i.ToString();
    dr["name"] = "name" + i.ToString();
    dt.Rows.Add(dr);

    dt.AcceptChanges();
}

List<Class1> clslist = new List<Class1>();

for (int i = 0; i < dt.Rows.Count; i++)
{
    Class1 cls = new Class1();
    cls.id = dt.Rows[i]["id"].ToString();
    cls.name = dt.Rows[i]["name"].ToString();
    clslist.Add(cls);
}

Response.Write(s);
Response.Write("<br>");
Response.Write(DateTime.Now.ToString());
Run Code Online (Sandbox Code Playgroud)

我知道,上面是耗时的,所以我试图找到一个替代解决方案.

有没有其他方法(我猜,LINQ to DataTable),通过它直接将表行转换为DTO …

.net c# linq asp.net datatable

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

类型类(在app_Code中)存在于"solution.dll"和"app_code.wxdafd.dll"中

我在C#.net中创建了一个web应用程序并创建了一个app_code文件夹,其中创建了一个文件

命名为"SessionHelper.cs"(属性设置为"Compile",以便它可以在Webapplication中访问)

它用于设置和获取会话参数,当我尝试调试它时,在"监视窗口"中给出了如下所示的"值"

app_code.SessionHelper.IsURLCheckSupport(Name)

    The type 'Solution.Web.app_code.SessionHelper' exists in both 
'Solution.Web.dll' and 'App_Code.wgj24okr.dll'  (value)
Run Code Online (Sandbox Code Playgroud)

见下文,

在此输入图像描述

所以我无法在调试时获得价值,可以解决这个问题.

如果您想了解更多详情,请告诉我.

c# asp.net web-applications

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

我可以将JSON/XML字符串作为POST请求发布到REST ServiceStack吗?

我目前正在努力ServiceStack,对它来说很新.(非常有趣;他们说他们比WCF和REST WCF(GET,POST,PUT,DELETE)更好)

我发现它很有帮助,只需要很少的代码就可以快速运行它.

目前我想发布数据.我制作类的对象并发送POST请求.

JsonServiceClient client = new JsonServiceClient(myURL);
MYclass cls= MakeObjectForServiceStackToInsertData();
var res = client.Post<MYClass>("/postrequest", cls); 
Run Code Online (Sandbox Code Playgroud)

通过上面的代码你可以理解,我正在做的事情是什么.我想我没错.如果你感到困惑,请告诉我.

我可以(KEY->Value)在我的客户端应用程序中为我的类创建一个JSON字符串(手动),并使用服务堆栈将其发送到服务器以发送数据.

string str = myJsonString();
var res = client.Post<.....>
Run Code Online (Sandbox Code Playgroud)

因此,如果我可以在ServiceStack的POST事件中生成JSON字符串并对其进行反序列化并在数据库中插入数据,那么不是发布整个对象,而是发布它.

任何的想法?

servicestack

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

我可以在paypal IPN中使用localhost URL作为notify_url吗?

我可以在paypal IPN中提供我的localhost网址来发回消息以通知并处理它吗?

要么...

我是否需要实时服务器URL来处理(我猜这是对的)因为paypal在发送消息时知道实时URL,但它从不知道localhost url发送消息.

任何人都可以告诉我,我需要实时服务器URL或我可以使用localhost因为我不确定.

如果我需要实时URL,我如何在visual studio中调试和开发我的功能(发送邮件等)?

有没有人有一个小例子或一些有用的链接?

paypal

9
推荐指数
2
解决办法
6251
查看次数

google oAuth - 从google oAuth登录后如何删除cookie

我用google oAuth开发了一个应用程序,这个工作正常.

我可以登录并访问我的网站.

我的问题是,当我从我的应用程序中退出(注销)时,我会删除所有会话,但不会删除经过身份验证的cookie(由google oAuth制作).

所以,当我注销,并使用谷歌oAuth登录时,它直接登录到系统,而不要求在谷歌帐户上验证电子邮件和密码.

任何人都知道我需要做什么才能删除该cookie并强制用户在注销一次后使用google oAuth再次登录.

oauth-2.0

7
推荐指数
2
解决办法
5479
查看次数

sql lite连接字符串有什么问题?

非常新的sql lite,

我想将它用于一个小项目,获得一些概述,并尝试实现,但我在连接字符串后使用时出错?

有人可以告诉我,当我从web.config为sql lite连接字符串设置路径时,我需要做什么更改.

 SQLiteConnection connection = new SQLiteConnection("D:\\Projects\\Apica MVC\\wizardDemo\\Apica.Signupweb.Presentation.MvcWeb\\App_Data\\SignUpWebDB");
Run Code Online (Sandbox Code Playgroud)

我有一个错误.......

"参数"D:\ Projects\Apica MVC\wizardDemo\Apica.Signupweb.Presentation.MvcWeb\App_Data\SignUpWebDB""的无效ConnectionString格式

没有为字符串设置密码.

sqlite

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

带有c#.net开发环境的Windows Live Id OAuth

我刚刚尝试制作一个示例应用程序,通过它可以通过Windows Live Id OAuth协议登录我的网站.

我的应用程序(下载的一个网上样本)工作正常.它打开弹出窗口,我可以提供我的Windows Live Id凭据,然后重定向回我帐户中提供的重定向URL.

我注意到,当我提供实时URL(让我们说..... myappp.sample.com)时,它完全重定向.但是当我尝试放入(http:// localhost:52254/WebSite9/default.aspx)时,我的帐户不支持此功能.(错误 - >您必须输入以http://或https://开头的有效域 - 不允许查询字符串.长度限制为248个字符.)

我的问题是,我怎样才能在我的本地环境中测试整个事物.因为它不会重定向回localhost URL.仅重定向到Live URL.

有没有办法用开发环境测试Live Id OAuth?

windows openid oauth-2.0

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

我可以在服务堆栈上自定义我的GET请求吗?

当我在服务堆栈上发出GET请求时,它工作正常.感谢服务堆栈,让开发人员工作变得非常轻松.在页面上,我有两个问题.可能有些人可以帮助我.据我所知,了解你的工作以及内部工作原理总是更好.

在此输入图像描述

看到上面的图片,当我在服务堆栈上发送GET请求时,它会显示我这种布局.

1>我想知道我可以自定义显示.即我可以删除传送"SnapShot ....."(大头)

2>我想知道,为什么在表的标题(结果表)中为属性中定义的每个大写字符占用空间.即在我的项目中,类中的属性名称是 - > instanceName,它在标题中表示为"实例名称".

谁能告诉我这背后的原因是什么?

servicestack

5
推荐指数
1
解决办法
651
查看次数

如何在不在sql server中插入记录的情况下知道表的下一个主键值?

我的项目中有一些东西,我需要在字段中显示下一个主键而不在物理上插入记录?

如何在不插入记录的情况下知道主键的下一个值?

即,Lets有10条记录,ID列为主键.现在我删除了第10条记录,所以下一个值将是11.

我想知道下一个主键的值(在我的情况下为11),而不是在表中物理地插入记录.

简而言之,未来下一个主键的价值.

我该怎么办?

请提供解决方案.

sql sql-server sql-server-2005 sql-server-2008 c#-4.0

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

Json格式化从控制台应用程序到服务堆栈的数据

我发现你是唯一一个回答服务堆栈的人,我没有收到电子邮件以及你提供给我的最后一个问题,看起来很好.

我见过你的个人资料,因为你是mythZ的主要创始人,我似乎再次问你我的问题.

对于我的一个问题,将JSON格式的POST数据发送到服务堆栈,我感谢您的回答.你的答案是正确的,但在我的情况下,我有以下案例.让我更详细地描述.

我见过服务堆栈的"Hello World"示例.我获得了https://github.com/ServiceStack/ServiceStack.Extras/blob/master/doc/UsageExamples/UsingRestAndJson.cs的链接

在我的情况下,我有控制台应用程序,它调用服务堆栈(在数据库中插入数据)现在,在该控制台应用程序中,我创建了一个类(class1),它在服务堆栈中具有相同的属性.

我在控制台应用程序中为该类的属性赋值,并将整个对象POST到服务堆栈.Syntex如下所示

 JsonServiceClient client = new JsonServiceClient(myURL);
       MYclass cls= MakeObjectForServiceStackToInsertData();
        var res = client.Post<MYClass>("/postrequest", cls); 
Run Code Online (Sandbox Code Playgroud)

我如上所述使用POST.这似乎没关系.在OnPOST事件的服务堆栈结束时,我获取此数据并插入数据库.它对我来说很好.

现在我的客户希望我们需要以任何格式传递数据.JSON/XML.我知道这是可能的,因为你提供了一个"Hello world"示例链接,它在那里提到.

但我发现,他们使用ajax/Jquery将数据发布到服务中.在我的情况下这是控制台应用程序,所以我无法使用ajax/Jquery.我想知道,是否有可能以JSON格式传递数据并在我的情况下进行操作.

非常感谢你提前.

servicestack

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