我正在使用ACE提供程序读取Excel工作表,并且某些单元格包含的数据大于255个字节。我尝试更改注册表设置中的TypeGuessRows,以及从连接字符串中进行设置。我仍然在代码中得到了截断的值。我无法重组Excel工作表或使用其他提供程序。我运行64位Windows。我的办公室版本是2013年。
这是我的连接字符串;对于数据<255字节的那些单元,它工作正常。
var connectionString = string.Format("provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties=\"Excel 12.0;IMEX=1;HDR=YES;TypeGuessRows=0;ImportMixedTypes=Text\"");
Run Code Online (Sandbox Code Playgroud)
有什么办法吗?提前致谢。
哪个是验证传递给函数的输入的最佳方法,即在继续执行某些操作之前验证所有输入
class A;
void fun(A* p)
{
if(! p)
{
return;
}
B* pB = p->getB();
if(! pB)
{
return;
}
.......
}
Run Code Online (Sandbox Code Playgroud)
或者你这样写:
void fun(A* p)
{
if(p)
{
B* pB = p->getB();
if(pB)
{
.....
}
}
}
Run Code Online (Sandbox Code Playgroud)
我问这个是因为,如果我使用第一种风格,那么我的代码中会有多个返回语句,很多人说这些语句很糟糕(不知道为什么),如果我使用第二种风格则会有太多级别嵌套在我的代码中.
我有这样一张桌子: -
Product ID Weight A 100 B 100 C 100 D 100 E 100
我想把它改成: -
Product ID Weight A 501 B 601 C 701 D 801 E 401
我怎么能用SQL更新命令呢?
我正在创建一个业务项格式化程序(传播),其中显示我希望在将它乘以100之后显示数字,并且为了所有计算目的,我想从显示(TextBox)读取数字,将其解析为double然后除以它100.
SpreadFormatter {
public string Format(double originalValue){
//Please dont mind this logic/approach. I am just represeting the scenario.
return (originalValue * 100).ToString();
}
public double SuggestAName(string currentValue){
//Please dont mind this logic/approach. I am just represeting the scenario.
return Double.Parse(currentValue)/100 ;
}
}
Run Code Online (Sandbox Code Playgroud)
我正在寻找上面"SuggestAName"方法的合适名称.
谢谢你的关注.
我在Windows手机市场上发布了一个应用程序,我正在尝试移植到Win 8.我正在使用Windows 8 Release Preview和Visual Studio Express RC 2012 for Win 8,代码是C#-XAML.
我创建了一个自定义的6x7日历.前7个按钮放入第一个StackPanel,下一个放入另一个面板,依此类推.所以有6个StackPanels按住42个按钮.所有这些StackPanel都被放入一个Grid便于定位.
每个按钮都与Holding名为OnLongPress 的EventHandler 相关联.所以我面临的问题是当按下一个按钮时,OnLongPress函数被调用两次.在调试时,我发现第一次,Holding state是Started和下次调用时,Holding stateid Completed.我无法弄清楚它被调用两次的原因.
是因为事件被冒泡了吗?:(
private void OnLongPress(object sender, HoldingRoutedEventArgs e)
{
Button butClicked = (Button)sender;
int iNumClicked = Convert.ToInt32(butClicked.Content.ToString());
CycleManager pCycMan = CycleManager.Instance;
string iVal, jVal;
int iRow, jCol;
string butName = butClicked.Name;
iVal = butName.Substring(1, 1);
jVal = butName.Substring(2, 1);
iRow = …Run Code Online (Sandbox Code Playgroud) 我们有一个用于源代码控制的TFS 2008服务器,以及一个连接到它的构建代理,用于处理我们的持续集成.
我希望能够为在Visual Studio的更高版本(如2012)中创建的项目设置构建,同时仍然能够构建使用Visual Studio 2008的项目(例如,我们有一些Windows Mobile代码我们需要支持)
这应该"正常"吗?我是否需要安装单独的构建代理,或者我是否必须升级所有内容(如果是,我是否要保留Windows Mobile代码)?
在Winforms中你可以说(有一些意想不到的行为)
if (DesignMode)
{
// Do something that only happens on Design mode
}
Run Code Online (Sandbox Code Playgroud)
在WPF中,你有
if (DesignerProperties.GetIsInDesignMode(this))
{
// Do something that only happens on Design mode
}
Run Code Online (Sandbox Code Playgroud)
但是我正在努力为缩小的PCL世界找到类似的选项,即Universal应用程序?
select t1.InvoiceNumber ,t1.LocalAmount , t2.LineAmount as discount , t1.CreateDate
from CashOrderTrn t1
left join DistrubutedDiscountDetails t2
on t1.InvoiceNumber = t2.InvoiceNumber
and t1.CreateDate between '20160531' and '20160701'
and t1.InvoiceType ='31'
Run Code Online (Sandbox Code Playgroud)