如果我有一个接受out参数并接受输入表单控制台的函数 -
public void Test(out int a)
{
a = Convert.ToInt16(Console.ReadLine());
}
Run Code Online (Sandbox Code Playgroud)
在NUnit测试期间如何使用Console.Readline()接受输入?如何使用NUnit测试此方法?
我尝试将此代码用于我的NUnit测试用例 -
[TestCase]
public void test()
{
int a = 0;
ClassAdd ad = new ClassAdd();
ad.addition(out a);
//a should be equal to the value I input through console.Readline()
Assert.AreEqual(<some value I input>, a, "test");
}
Run Code Online (Sandbox Code Playgroud)
如何测试接受out参数的方法并接受来自Console的用户输入?
我有一个字符串数组,我需要使用字符串数组中的第一个字符串,它不是null.让我们考虑一下这段代码片段 -
string[] strDesc = new string[] {"", "", "test"};
foreach (var Desc in strDesc)
{
if (!string.IsNullOrEmpty(Desc))
{
txtbox.Text = Desc;
break;
}
}
Run Code Online (Sandbox Code Playgroud)
因此,根据此代码段,现在应显示txtbox "test".
要做到这一点,我有这个代码.这工作正常.但是,我想知道是否可以使用LINQ获得相同的结果,并且可能跳过使用额外的foreach循环?
我有一个gridview,其中一个模板字段是一个asp图像服务器标签.我想在此gridview中显示图像,但是基于我在数据绑定上获得的值.
因此,每行可以具有不同的值,并且基于这些值,我需要显示不同的图像.我试图调用javascript函数GetImage()并将我在databind上获得的值传递给此函数.但是,我不能让这个工作.
<Columns>
<asp:TemplateField HeaderText="<%$Resources:LocalizedText,LabelStatus%>">
<ItemTemplate>
<asp:Image ID="imgStatus" runat="server" CssClass="label" src="GetImage(<%#Eval(<%# Bind("Status_value") %>) %>)"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
Run Code Online (Sandbox Code Playgroud)
Javascript功能 -
function GetImage(value)
{
if (value == 1)
{
return "../Images/act_green.gif";
}
else
{
return "../Images/act_red.gif";
}
}
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?而且,我该如何解决?谢谢
我需要查询一些数据。这是我构建的查询,但对我来说不起作用。对于此示例,我正在使用AdventureWorks数据库。
SELECT * FROM [Purchasing].[Vendor] WHERE PurchasingWebServiceURL LIKE
case
// In this case I need all rows to be returned if @url is '' or 'ALL' or NULL
when (@url IS null OR @url = '' OR @url = 'ALL') then ('''%'' AND PurchasingWebServiceURL IS NULL')
//I need all records which are blank here including nulls
when (@url = 'blank') then (''''' AND PurchasingWebServiceURL IS NULL' )
//n this condition I need all record which are not like a particular …Run Code Online (Sandbox Code Playgroud) 这两个陈述有什么区别?哪个性能更好?
Console.Writeline(i);
Console.Writeline(i.toString());
Run Code Online (Sandbox Code Playgroud)
其中i是字符串或整数.
我有一个 VB6 项目(windows 应用程序),我必须在 C#.net 中的现有 VB6 项目中重新开发一个模块。
我在 C#.net 中开发的模块应该是一个 dll 并且应该包含一些 Windows 窗体。我能够从我的 vb6 项目中成功调用 ac# console applicaiton dll,但是当我尝试从我的 VB6 项目中使用 winforms 调用 C# 类库时遇到了问题。
这就是我为我的概念证明所做的 - 这是我的 C#.net 类库项目中的一个类文件。
namespace TestDll
{
public interface IClass1
{
void DisplayMessage();
}
public class Class1:IClass1
{
void IClass1.DisplayMessage()
{
MessageBox.Show ("Displyaing message");
}
}
}
Run Code Online (Sandbox Code Playgroud)
我在同一个 nemspace 中有一个表单,我计划Class1在 C# winform 的 page_load 事件上实例化并使用它的对象。
在我的 VB6 项目中,我想显示我在 C#.net dll 中的表单。我用这个代码调用它 -
Private Declare Sub DislayMessage Lib "TestDll.dll" ()
Private …Run Code Online (Sandbox Code Playgroud) 我已经研究过SQL存储过程,我注意到很多人使用两种不同的方法 -
首先,使用选择查询,例如
Select * from TableA where colA = 10 order by colA
Run Code Online (Sandbox Code Playgroud)
其次,是通过构建查询来做同样的事情
Declare @sqlstring varchar(100)
Declare @sqlwhereclause varchar(100)
Declare @sqlorderby varchar(100)
Set @sqlstring = 'Select * from TableA '
Set @sqlwhereclause = 'where colA = 10 '
Set @sqlorderby = 'order by colA'
Set @sqlstring = @sqlstring + @sqlwhereclause + @sqlorderby
exec @sqlstring
Run Code Online (Sandbox Code Playgroud)
现在,我知道两者都很好.但是,我提到的第二种方法是维护有点烦人.
我想知道哪一个更好?是否有任何具体原因可以采用一种方法而不是另一种方法?一种方法比其他方法有什么好处?
c# ×5
sql ×2
sql-server ×2
vb6 ×2
asp.net ×1
case ×1
dll ×1
gridview ×1
interop ×1
javascript ×1
linq ×1
nunit ×1
performance ×1
where-clause ×1
windows ×1