我一直在使用excel电子表格,到目前为止我从来没有遇到任何问题..但是这个错误,"不是合法的OleAut日期.",当我试图读取excel文件时,突然出现了.有谁知道如何解决这个问题.这是我用来读取excel并将数据放入数据集的代码.它之前运行良好但在我对数据源进行了一些更改(不涉及日期)之后出现了这个错误.
var fileName = string.Format("C:\\Drafts\\Excel 97-2003 formats\\All Data 09 26 2012_Edited.xls");
var connectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties=Excel 8.0;", fileName);
var adapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", connectionString);
DataSet Originalds = new DataSet();
adapter.Fill(Originalds, "Employees"); // this is where the error shows up
Run Code Online (Sandbox Code Playgroud) 我想制作一个简单的CSV解析器.它应该通过逗号分隔值列表并将它们放在一个IList<int>.这些值应该是整数.如果值不可解析,我只想省略它.
这是我到目前为止的代码:
csv.Split(',').Select(item =>
{
int parsed;
if (int.TryParse(item, out parsed))
{
return parsed;
}
continue; //is not allowed here
}).ToList();
Run Code Online (Sandbox Code Playgroud)
但是,continue这里不允许使用(当然).如何在我的select实现中省略一个值?
注意:当然可以使用foreach或LINQ表达式,但我想知道如何使用lambda.
我正在学习Vue.js并且正在使用jsFiddle玩它。jsFiddle 原生支持 Vue.js。
但是,我无法使用Chrome 浏览器的 vue.js dev-tools与 jsFiddle 一起使用,因为它没有检测到它。小“V”图标始终处于禁用状态,表示“未检测到 vue.js”。
现在,问题是 jsFiddle 将结果呈现在 HTML 中iframe,而 dev-tools 不检查任何iframeVue.js 应用程序,例如,在此github issue 中。
我从未设法逃脱iframe. 即使在新窗口中打开框架内容的 URL,生成的 HTML 页面也会再次包含iframe.
如何在 jsFiddle 中使用 Vue.js 开发工具?
我在 RDBMS 中有一个表,用于记录用户登录。用户可以在白天多次登录系统,我的应用程序会记录这些登录信息。
问题是,我需要编写一个查询来获取用户在 2011-04-21 到 2011-07-08 等所需日期之间每天的第一次登录
登录日志表
userID Login Date
guess 2011-04-21 16:46:46.000
Admin 2011-05-03 17:32:15.000
guess 2011-05-05 15:48:54.000
guess 2011-06-01 14:14:50.000
guess 2011-06-01 14:23:18.000
my_user 2011-07-08 15:42:20.000
guess 2011-07-08 16:15:08.000
guess 2011-07-08 16:19:14.000
my_user 2011-07-08 16:36:45.000
my_user 2011-07-08 16:37:41.000
my_user 2011-07-08 16:42:21.000
Run Code Online (Sandbox Code Playgroud)
查询应该给出如下结果(每天的第一次登录日期/时间)
UserID First_Login_Date
guess 2011-04-21 16:46:46.000
Admin 2011-05-03 17:32:15.000
guess 2011-05-05 15:48:54.000
guess 2011-06-01 14:14:50.000
my_user 2011-07-08 15:42:20.000
guess 2011-07-08 16:15:08.000
Run Code Online (Sandbox Code Playgroud) 使用 Moq,我想对 Setup() 进行调用,以便无论提供的参数如何,它始终返回 null。
我这样做:
_myMock.Setup(mock => mock.MyMethod(
It.IsAny<int?>(),
It.IsAny<String>(),
It.IsAny<String>(),
It.IsAny<String>())).
Returns((IList<Item>)null
);
Run Code Online (Sandbox Code Playgroud)
只是返回 null 的时间很长。我可以让它更简单吗?
我有一个ObservableCollection<T>项目,我需要使访问线程安全.
特别是,我需要一个线程安全的枚举器.这意味着,在迭代集合期间(例如在LINQ查询期间),没有人应该能够添加项目.
我注意到.NET 4.0命名空间中的类System.Collections.Concurrent.但是它们似乎都没有匹配.另外,在MSDN文档中,我没有找到关于哪些访问实际上是线程安全的段落.
在某个地方是否有现有的线程安全集合,我可以使用,还是我必须自己实现?
c# collections concurrency observablecollection thread-safety
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="WebUserControl" %>
<script type="text/javascript">
function Incrementer() {
var txtBox = document.getElementById('MainContent_TextBox1').value;
var i = parseInt(txtBox);
i = i + 1;
var v = i + "";
document.getElementById('MainContent_TextBox1').value = v;
return false;
}
function Decrementer() {
var txtBox = document.getElementById('MainContent_TextBox1').value;
var i = parseInt(txtBox);
i = i - 1;
var v = i + "";
document.getElementById('MainContent_TextBox1').value = v;
return false;
}
</script>
<asp:TextBox ID="TextBox1" runat="server" Text="0"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Up" OnClientClick="return Incrementer();"/>
<asp:Button ID="Button2" Text="Down" …Run Code Online (Sandbox Code Playgroud) 我在templateField中有一个带有textBox的gridView.如果行中标记了一个复选框,我想提取textBox的文本.
我有如下定义的gridView
<asp:GridView ID="GV_Comments" runat="server" AutoGenerateColumns="False" DataKeyNames="id"
DataSourceID="SQL_Comments">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox runat="server" ID="Comment_Select" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="ID" HeaderText="ID" ReadOnly="True" SortExpression="ID" />
<asp:TemplateField HeaderText="comment" SortExpression="comment">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("comment") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="CommentForPeriod" runat="server" Text='<%# Bind("comment") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:Button ID="B_Load" runat="server" Text="Transfer Selection" onclick="B_Load_Click" />
<br />
<asp:TextBox ID="CompiledText" runat="server" Width="662px" Rows="10"
TextMode="MultiLine"></asp:TextBox>
Run Code Online (Sandbox Code Playgroud)
代码如下
Protected Sub B_Load_Click(ByVal sender As Object, ByVal e As EventArgs) '(sender As Object, e As System.EventArgs) Handles B_Load.Click
Dim …Run Code Online (Sandbox Code Playgroud) 我需要选择<input type="submit">没有类说明符的所有元素.
附:
<input class="Submit" type="submit" value="Save" name="action_1">
<input class="Button" type="submit" value="Save as" name="action_2">
<input type="submit" value="Save and Continue" name="action_3">
<input class="Cancel" type="submit" value="Cancel" name="action_4">
Run Code Online (Sandbox Code Playgroud)
它应该只选择第三个.
我可以想象这个CSS:
input[type="submit"]:not(ANY CLASS){
}
Run Code Online (Sandbox Code Playgroud)
但是,我应该写什么作为"任何类别"?还是有不同的方法alltogehter?我可以列举那里所有已知的类,但这很乏味,可能会随着时间的推移而改变.
注意:
我刚刚了解到:
Dictionary<TKey,?TValue>Class的链接MSDN文章.GetHashCode()不为每个唯一字符串值提供唯一的散列码值.根据有关字符串类的相应MSDN文章,不同的字符串可以返回相同的哈希码.这让我想到,.NET中的字典(至少在使用字符串作为键时)容易受到键冲突的影响.
这种钥匙碰撞会发生什么?是否存在任何已知的唯一字符串值,实际发生碰撞?字典是否会在这些关键值上被打破?
另外:
注意:我不是指特定的.NET CLR,但如果重要,那么让我们来谈谈桌面的4.5.2 32位版本.
关于重复的说明:
我目前正在构建一个.NET程序集,该程序应在.NET 4.5和至少两个.NET Core版本(.NET Core 2.1和.NET Core 3.0)中工作。
我正在使用条件编译,如下所示:
#if NET45
//Use as System.Web.HttpContext
isHttps = context.Request.IsSecureConnection;
IPAddress fromIp = IPAddress.Parse(context.Request.UserHostAddress);
string path = context.Request.Path;
#elif NETCOREAPP2_1
//Use as Microsoft.AspNetCore.Http.HttpContext
isHttps = context.Request.IsHttps;
IPAddress fromIp = context.Request.HttpContext.Request.HttpContext.Connection.RemoteIpAddress;
string path = context.Request.Path;
#elif NETCOREAPP3_0
//Use as Microsoft.AspNetCore.Http.HttpContext
isHttps = context.Request.IsHttps;
IPAddress fromIp = context.Request.HttpContext.Request.HttpContext.Connection.RemoteIpAddress;
string path = context.Request.Path;
#endif
Run Code Online (Sandbox Code Playgroud)
由于NETCOREAPP2_1和NETCOREAPP3_0的代码相同,所以我想知道我可以使用以下代码:
#if NET45
//...
#elif NETCOREAPP2_1 [OR] NETCOREAPP3_0
//...
#endif
Run Code Online (Sandbox Code Playgroud)
但是,此语法不起作用。
在这样的条件编译中是否存在有效的语法来包含OR运算符?
注意:由于这涉及ASP.NET请求管道,因此我认为.NET Standard不是一个选择。您可能需要及时查看代码:https : //github.com/suterma/SqlSyringe/blob/f7df15e2c40a591b8cea24389a1ba8282eb02f6c/SqlSyringe/Syringe.cs
注意:这不是关于数据库设计,也不是关于GUID的一般用法.这是关于在Microsoft SQL服务器上确定性地为测试数据创建这样的GUID.
我们正在将数据库从整数标识符迁移到uniqueidentifier数据类型.
出于测试目的,我们希望将测试数据集迁移到已知的GUID值,确定性地基于我们以前的整数值
UPDATE Unit
SET UnitGuid = NEWID(UnitId)
Run Code Online (Sandbox Code Playgroud)
显然这不会马上起作用.如何使用UnitId创建确定性GUID?
我正在寻找整数列表与整数散列集之间的比较/性能考虑因素。这就是HashSet<T> 和 List<T> 的区别是什么?谈论T为整数。
我将有多达几千个整数,我想找出单个整数是否包含在这个集合中。
现在当然这对散列集大喊大叫,但我想知道散列在这里是否有益,因为它们只是开始时的整数。首先散列它们不会在这里增加不必要的开销吗?
或者换句话说:使用散列集是否有益,即使对于整数集?
c# ×6
.net ×2
asp.net ×2
sql ×2
.net-core ×1
collections ×1
concurrency ×1
css ×1
dictionary ×1
excel ×1
gridview ×1
guid ×1
hash ×1
hashset ×1
html ×1
installation ×1
javascript ×1
jsfiddle ×1
key ×1
lambda ×1
linq ×1
moq ×1
null ×1
performance ×1
pseudo-class ×1
select ×1
sql-server ×1
unit-testing ×1
vb.net ×1
vue.js ×1