假设我有一个表变量:
DECLARE @MyTableVar TABLE (ID INT IDENTITY(1,1), SomeData NVARCHAR(300))
Run Code Online (Sandbox Code Playgroud)
插入250行后,我需要使用表格"重新开始".我这样做:
DELETE FROM @MyTableVar
Run Code Online (Sandbox Code Playgroud)
我可以对table变量做什么,以便:
insert into @MyTableVar Values("TestData")
select * from @MyTableVar
Run Code Online (Sandbox Code Playgroud)
将返回此:
_______________________________ | ID | SomeData | |___________|_________________| | | | | 1 | TestData | |___________|_________________|
而不是这个:
_______________________________ | ID | SomeData | |___________|_________________| | | | | 251 | TestData | |___________|_________________|
我想写一个方法,将await变量设置为true.
这是psudo代码.
bool IsSomethingLoading = false
SomeData TheData;
public async Task<SomeData> GetTheData()
{
await IsSomethingLoading == true;
return TheData;
}
Run Code Online (Sandbox Code Playgroud)
TheData将由Prism事件和IsSomethingLoading变量设置.
我调用了该GetTheData方法,但我希望它能运行异步(现在它只是在数据没有准备好的情况下返回null.(这会导致其他问题.)
有没有办法做到这一点?
我在一个入门级程序员的采访中问过这样的问题:
var instance1 = new MyObject{Value = "hello"}
var instance2 = instance1;
instance1.Value = "bye";
Console.WriteLine(instance1.Value);
Console.WriteLine(instance2.Value);
Run Code Online (Sandbox Code Playgroud)
申请人回答"你好","再见"作为输出.
我的一些同事说,"指针"不再重要,或者这个问题不是真正的能力判断.
他们是对的吗?
编辑:有人指出MyObject可能是一个结构.这是一个好点.但是,我没有发布我给受访者的完整问题.完整的问题有一个类,显然是一个类(不是结构).它可以在这里找到.
说我有以下方法:
public static void MyCoolMethod(params object[] allObjects)
{
}
public static void MyCoolMethod(object oneAlone, params object[] restOfTheObjects)
{
}
Run Code Online (Sandbox Code Playgroud)
如果我这样做:
MyCoolMethod("Hi", "test");
Run Code Online (Sandbox Code Playgroud)
哪一个被调用,为什么?
我的公司正在寻求标准化隔离框架.我在看MS Stubs(因为Moles看起来很酷,我以为我会把它保留在同一个框架中).然而,Stubs还没有为黄金时间做好准备(在正常功能中它仍然有点错误).
所以现在我在看那里还有什么.我看过Moq和Rhino嘲笑.在这样做的同时,我遇到了Richard Banks的精彩比较.在那他显示NSubstitute.我真的很喜欢我在那里看到的东西.
然而,在被MS Stubs烧掉一点后,我不想打赌一个alpha/non-production ready Isolation Framework.
那么,NSubstitute准备好迎接黄金时段了吗?还是它还有点儿车?
首先是一个背景问题:
一般来说,int和之间有什么区别IntPtr?我的猜测是它是一个实际的对象,而不是像int或是一个值byte.假设是真的:
所以他们不一样.然而,我看到手柄代表两者.
Control.Handleint(或uint):PInvoke可以设置为返回一个int并且它可以正常工作:
[DllImport("coredll.dll", SetLastError = true)]
public static extern int GetForegroundWindow();
private string GetActiveWindow()
{
const int nChars = 256;
int handle = 0;
StringBuilder Buff = new StringBuilder(nChars);
handle = CoreDLL.GetForegroundWindow();
if (CoreDLL.GetWindowText(handle, Buff, nChars) > 0)
{
return Buff.ToString();
}
return "";
}
Run Code Online (Sandbox Code Playgroud)那么,intvs IntPtr?手柄有问题吗?你能用吗?
我看过很多博文.我已经阅读了文档.我通常相当擅长拾取新东西,但即使我继续阅读,但我只是不理解SQL Server(2008)中的PIVOT部分.
有人可以把它给我,好又慢.(即傻瓜的枢轴)
如果需要一个例子,那么我们可以使用这个问题中的一个.
以下是我尝试转动该示例的方法:
SELECT OtherID, Val1, Val2, Val3, Val4, Val5
FROM
(SELECT OtherID, Val
FROM @randomTable) p
PIVOT
(
max(val)
FOR Val IN (Val1, Val2, Val3, Val4, Val5)
) AS PivotTable;
Run Code Online (Sandbox Code Playgroud)
上面的查询给出了空值而不是Val1,Val2 ...列中的值.
但要明确的是,我不是在寻找一个固定的查询.我需要了解 PIVOT,因为我正在寻找比这个例子更复杂的东西.
具体来说,聚合的交易是什么?我只想获取与给定ID匹配的所有字符串值并将它们放在同一行中.我不想集合任何东西.(再次,请看我的例子中的这个问题.)
我是一个使用Team Foundation Server进行源代码管理的双人团队.我开始了一个新的解决方案 对于该解决方案,我创建了几个项目 在其中许多我使用NuGet安装AutoMapper和Unity.然后我右键单击解决方案并选择"添加到源代码管理".然后,我检查了所产生的挂起更改.
我团队中的另一个人做了一个最新的,并且所有NuGet引用都失败了.
所以,我想我需要添加Packages文件夹.所以我做到了.
在我这样做之后,NuGet引用仍然失败(对他来说).
此外,当我尝试将NuGet包添加到文件时,我现在收到此错误:
访问路径'C:\ src\MyPath\ToMySolution\packages\repositories.config'被拒绝.
我假设这是因为repositories.config文件现在处于源代码控制之下(因此只有在手动签出之前它才会被读取).
那么,这是我的两个问题:
我做错了吗?或者NuGet是否真的不适合与源代码管理一起使用?
我对RegEx表达式很恐怖,我只是不经常使用它们来记住使用之间的语法.
我正在使用grepWin来搜索我的文件.我需要进行搜索,返回两次给定字符串的文件.
所以,例如,如果我在搜索单词"how",那么文件一不匹配:
你好
,今天好吗?
但文件二会:
你好
,今天好吗?我很好,你好吗?
任何人都知道如何制作一个与之匹配的RegEx?
我有一个同事问我为什么要使用ICommand模式.
他想添加一个按钮,然后在后面的代码中为它创建一个事件.然后从事件他想在ViewModel上调用一个方法.
我给了他明显的答案:这增加了View和ViewModel之间的耦合.但他认为View和ViewModel已经耦合了.(我们将视图的DataContext设置为后面View视图中的ViewModel:DataContext = new MyViewModel();
是的,我告诉他,他的方式增加了"更多耦合",但它对我来说听起来有点蹩脚.
所以,我知道ICommand是干净的方式,我这样做.但除了不使用现有的耦合器之外,ICommand还会为您带来什么呢?
c# ×5
.net ×2
sql-server ×2
t-sql ×2
async-await ×1
asynchronous ×1
mvvm ×1
nsubstitute ×1
nuget ×1
params ×1
pinvoke ×1
pivot ×1
pointers ×1
regex ×1
tfs ×1
unit-testing ×1
wpf ×1