小编Wor*_*gon的帖子

将YYYYMMDD字符串日期转换为日期时间值

可能重复:
在c#中将字符串转换为DateTime

一个问题

我有一个实际从directoryInfo获取的字符串值.我想要完成的是将字符串值转换为日期值以进行比较.

文件夹名称是这样的样本C:\ FOLD\20111120和正确的另一个文件夹路径是这样的C:\ FOLD\20111021

20111120实际上是一种日期格式.我试图将其转换为日期格式,以进行一些比较决定是否删除整个目录.

我想我会在这里粘贴我的代码

DirectoryInfo dir = new DirectoryInfo(_FolderPath);

foreach (DirectoryInfo f in dir.GetDirectories())
{
     String folderName = f.ToString();
     DateTime ConDt = Convert.ToDateTime(folderName);
     Console.WriteLine(ConDt);
     Console.WriteLine(ConDt.GetType());
   //Console.WriteLine(folderName.GetType());
   //Console.WriteLine(f.GetType());
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用Convert.toDatetime(),我得到错误,无法进行转换.我怎么能这样做?

.net c# datetime

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

执行sp_executeSql以选择...到#table但不能选择临时表数据

试图在sp_Executedsql中选择...到临时表#TempTable.不是它成功插入或没有,但有消息写入(359行受影响)意味着成功插入?下面的脚本

DECLARE @Sql NVARCHAR(MAX);
SET @Sql = 'select distinct Coloum1,Coloum2 into #TempTable 
            from SPCTable with(nolock)
            where Convert(varchar(10), Date_Tm, 120) Between @Date_From And @Date_To';

SET @Sql = 'DECLARE @Date_From VARCHAR(10);
            DECLARE @Date_To VARCHAR(10);
            SET @Date_From = '''+CONVERT(VARCHAR(10),DATEADD(d,DATEDIFF(d,0,GETDATE()),0)-1,120)+''';
            SET @Date_To = '''+CONVERT(VARCHAR(10),DATEADD(d,DATEDIFF(d,0,GETDATE()),0)-1,120)+''';
            '+ @Sql;

EXECUTE sp_executesql @Sql;
Run Code Online (Sandbox Code Playgroud)

执行后,它返回我的消息(359行受影响).接下来尝试从#TempTable中选择数据时.

Select * From #TempTable;
Run Code Online (Sandbox Code Playgroud)

它回报我:

Msg 208, Level 16, State 0, Line 2
Invalid object name '#TempTable'.
Run Code Online (Sandbox Code Playgroud)

怀疑它只在'选择'部分工作.插入不起作用.如何解决?

sql t-sql temp-tables sql-server-2008 sp-executesql

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

SQL Server:使用动态列创建临时表

我对目前的情况有疑问,我搜索了网上的任何解决方案,但我仍然无法得到它.

这里的问题是:

我有一堆SQL语句需要在存储过程中使用游标内部执行,每个语句通过从不同的数据库和表中选择来执行插入.

例如:

INSERT INTO Database1.Table1(column1, column2, column3)
   SELECT column1,column2, column3
   FROM Database2.Table2
   WHERE --Some Condition
Run Code Online (Sandbox Code Playgroud)

也许另一个执行的SQL语句是这样的

INSERT INTO Database1.Table3(column1, column2, column3, column4)
   SELECT column1, column2, column3, column4
   FROM Database3.Table3
   WHERE --Some Condition
Run Code Online (Sandbox Code Playgroud)

好的,基本上我的过程是这样的

Execute Sql to insert into temp Tables --> Insert into a permanent Table from Temp Tables
Run Code Online (Sandbox Code Playgroud)

从上面的两个SQL语句,我执行的结果来自database2或3或者可能是4,5等等.我将转到我的database1进行永久存储.告诉我们的更多摘要方式,我只想制作另一个从不同数据源获取的数据副本并存储到我的本地数据库中以进行进一步处理.

我的主要问题是我的负责人(或经理)告诉我将所有执行结果扔到TEMP表中或#Table在执行永久物之前.

像这样的东西:

INSERT INTO #Table3(column1, column2, column3, column4)
   SELECT column1, column2, column3, column4
   FROM Database3.Table3
   WHERE --Some Condition
Run Code Online (Sandbox Code Playgroud)

我对#Temp桌子进行了一些研究,我发现它们中的大多数是使用'FIX'栏创建的

CREATE TABLE #Table
(
    column1 …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server dynamic temp-tables

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

Window Azure使用A6 vmsize部署云服务

在我的云服务中,我有一个Web角色和辅助角色.我改变了我的Web角色VM大小从媒体A6.

当我尝试部署到Windows Azure时,我收到以下错误消息:s似乎提示我错误

由于部署请求限制,无法配置此部署所需的VM大小(或VM大小的组合).如果可能,请尝试放松约束,例如虚拟网络绑定,部署到托管服务而不在其中部署其他部署,使用不同的关联组或没有关联组,或尝试部署到其他区域.

那是什么意思?

azure azure-worker-roles

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

在Window Application中使用HttpContext.Current.Server.MapPath?

我可以在窗口应用程序中执行类似的操作吗?

HttpContext.Current.Server.MapPath("Email/ForgotPassword.txt"));
Run Code Online (Sandbox Code Playgroud)

该项目是基于Web的应用程序.

我的下一个项目基本上是一个窗口服务......

寻求建议.

.net c#

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

添加()时间跨度似乎没有添加它们

我有一个函数,通过添加TtimeSpans 来计算总工时.我试图通过网络搜索并找到了一些东西TimeSpan.Add().

以下是我的代码示例:

TimeSpan TotalWorkHours = new TimeSpan(0,0,0);
List<TimeSpan> Interval = new List<TimeSpan>();

Interval.Add(TimeSpan.Parse("04:20:07"));
Interval.Add(TimeSpan.Parse("03:59:49"));

//Having a looping to Add in the Interval and combine the total work hours

for(int i = 0; i < Interval.count; i++)
{
    if(i == 0)
       TotalWorkHours = Interval[i];       
    else
       //This section will always add in "00:00:00"
       TotalWorkHours.Add(Interval[i]);
} 
Run Code Online (Sandbox Code Playgroud)

然而,由此产生的时间跨度是00:00:00.哪里出错了?

c# timespan

0
推荐指数
1
解决办法
60
查看次数