我在TeamTest中有一个名为"MyClassTest"的单元测试项目.这个项目有三个TestMethods.每种方法都需要自己的测试初始化步骤.但是当我将TestInitializeAttribute应用于三个初始化方法时,它表示不应该多次使用该属性.那么在Visual Studio Team Test中用于初始化每个测试方法的属性应该是什么?
参考:
我有以下实体框架代码的第一个代码.创建表并插入数据.但是俱乐部表中有重复的记录.
我的业务是: -
使用俱乐部创建应用创建俱乐部
使用person app创建人员
如何避免重复输入?
static void Main(string[] args)
{
Database.SetInitializer<NerdDinners>(new MyInitializer());
CreateClubs();
InsertPersons();
}
public static void CreateClubs()
{
string connectionstring = "Data Source=.;Initial Catalog=NerdDinners;Integrated Security=True;Connect Timeout=30";
using (var db = new NerdDinners(connectionstring))
{
Club club1 = new Club();
club1.ClubName = "club1";
Club club2 = new Club();
club2.ClubName = "club2";
Club club3 = new Club();
club3.ClubName = "club3";
db.Clubs.Add(club1);
db.Clubs.Add(club2);
db.Clubs.Add(club3);
int recordsAffected = db.SaveChanges();
}
}
public static Club GetClubs(string clubName)
{
string connectionstring = "Data …
Run Code Online (Sandbox Code Playgroud) Response.Redirect
我的员工页面中有一个.它重定向到Salary页面.
Response.Redirect ("Salary.aspx");
Run Code Online (Sandbox Code Playgroud)
它工作正常,直到我添加异常处理如下.
try
{
Response.Redirect ("Salary.aspx");
}
catch(Exception ex)
{
//MyLog();
throw new Exception();
}
//Remaining code in event handler
Run Code Online (Sandbox Code Playgroud)
这引起了一个新的异常,说"线程正在被中止".我开始知道可以通过将endResponse
重定向设置为false 来避免这种情况.
Response.Redirect(url, false);
Context.ApplicationInstance.CompleteRequest();
Run Code Online (Sandbox Code Playgroud)
新异常的解释:它总是抛出异常但由框架处理.因为我添加了一个try..catch它被捕到了(我正在抛出一个新的异常)
注意:CompleteRequest
确实绕过了其他HTTP过滤器和模块,但它不会绕过当前页面生命周期中的其他事件
注意:Response.Redirect将此异常抛出到当前页面的结束处理.ASP .Net本身处理此异常并调用ResetAbort
继续处理.
题
陷阱
false
,则将执行eventhandler中的剩余代码.因此,我们需要if
检查剩余的代码(检查:是否未满足重定向条件).参考
虽然我在OOAD有一些经验,但我是SOA的新手.
SOA设计的一个指导原则是"仅使用抽象类进行建模".从设计中忽略它们.抽象的使用可以有助于建模(分析阶段).
在分析阶段,我想出了一个BankAccount基类.从中派生的专业类是"FixedAccount"和"SavingsAccount".我需要创建一个服务,返回用户的所有帐户(帐户列表).应满足要求的服务结构应该是什么?
注意:如果您可以使用WCF提供代码演示,那将会很棒.
我有一个用于处理MSMQ消息的Windows服务.它依赖于以下逻辑
·Windows服务中有一个计时器.每隔十分钟,它将执行名为"ProcessMessages"的方法.
·在此方法中,它首先通过调用队列的GetAllMessages方法创建现有messageIds的列表.
·对于每个messageId,它接收消息(使用ReceiveById)并将其存储到文件中
有没有更好的方法来实现消息处理?
参考:http: //www.switchonthecode.com/tutorials/creating-a-simple-windows-service-in-csharp
注意:当我将其作为服务时,以下代码未提供所需的结果; 但是事件查看器中没有错误(我没有进行任何显式记录).当它是一个简单的控制台应用程序时工作正常.怎么纠正呢?[现在,当我在下面的评论中将会议改为"用户"时,它正在工作]
我的行为要求是在固定的时间段处理所有消息 - 比如上午10点和上午11点(每天).这样做的最佳方法是什么?
namespace ConsoleSwitchApp
{
class Program : ServiceBase
{
private static Timer scheduleTimer = null;
static MessageQueue helpRequestQueue = null;
static System.Messaging.XmlMessageFormatter stringFormatter = null;
static void Main(string[] args)
{
ServiceBase.Run(new Program());
}
public Program()
{
this.ServiceName = "LijosService6";
//Queue initialize
helpRequestQueue = new MessageQueue(@".\Private$\MyPrivateQueue", false);
stringFormatter = new System.Messaging.XmlMessageFormatter(new string[] { "System.String" });
//Set Message Filters
MessagePropertyFilter filter = new MessagePropertyFilter();
filter.ClearAll();
filter.Body = true;
filter.Label …
Run Code Online (Sandbox Code Playgroud) 我在C#控制台应用程序中有foo(object
)和foo2(string
).代码2抛出异常,而代码1正常工作.
你能解释为什么它的表现如此(有MSDN参考)?
//代码1
object foo = null;
string test = Convert.ToString(foo).Substring(0, Convert.ToString(foo).Length >= 5 ? 5 : Convert.ToString(foo).Length);
Run Code Online (Sandbox Code Playgroud)
//代码2
string foo2 = null;
string test2 = Convert.ToString(foo2).Substring(0, Convert.ToString(foo2).Length >= 5 ? 5 : Convert.ToString(foo2).Length);
Run Code Online (Sandbox Code Playgroud) 我有一个WCF
使用.Net 4.0框架的SOAP Web服务.我正在使用contract first
方法 - 即服务代码是使用WCSF Blue工具从手写WSDL生成的.
我对请求消息有以下要求.
如果价格低于100,则必须没有税元素,但如果它超过100,则需要纳税元素.
在XPath中,表达式如下
//t:price[. < 100][not(following::t:tax)] or
//t:price[. >=100][following::t:tax]
Run Code Online (Sandbox Code Playgroud)
我可以在服务的C#代码中处理它.但我想使用任何XML技术在WSDL本身中定义规则.这将有助于客户端了解输入消息应该满足的业务验证.(这是业务规则的定义,其实现在WSDL本身;不会将其他文档共享给客户端.)
在WCF中实现它的最佳方法是什么?WSDL
我可以在哪个部分定义,XML validations
以便它将被处理WCF
?
在下面给出的前两个参考文献中,提到了一种关于XPath
和C#处理程序(用于Web服务框架)的方法.我们不能在WCF中这样做吗?C#不能从WSDL读取XPath吗?怎么做?任何参考?
注意:我可以执行C#处理程序; 但business logic
对于validation
应该在XML
参考
我们如何使用JavaScript/jQuery从字符串中获取最后一个单词?
在下面的场景中,最后一个单词是"Collar".单词用" - "分隔.
Closed-Flat-Knit-Collar
Flat-Woven-Collar
Fabric-Collar
Fabric-Closed-Flat-Knit-Collar
Run Code Online (Sandbox Code Playgroud) 我试图在SQL Server 2005中创建数据库并获得以下错误
Msg 1803,Level 16,State 1,Line 2
CREATE DATABASE语句失败.主文件必须至少为32 MB才能容纳模型数据库的副本.
创建SQL
CREATE DATABASE [MyDatabase] ON PRIMARY
( NAME = N'MyDatabase_Data', FILENAME = N'D:\SQL SERVER\DataFiles\MyDatabase\MyDatabase.MDF' , SIZE = 3096KB , MAXSIZE = 29687808KB , FILEGROWTH = 262144KB ),
( NAME = N'MyDatabase_Data2', FILENAME = N'D:\SQL SERVER\DataFiles\MyDatabase\MyDatabase_Data2.ndf' , SIZE = 3096KB , MAXSIZE = 10485760KB , FILEGROWTH = 262144KB ),
FILEGROUP [FG_Indexes]
( NAME = N'MyDatabase_Indexes', FILENAME = N'D:\SQL SERVER\DataFiles\MyDatabase\MyDatabase_Indexes.ndf' , SIZE = 1920KB , MAXSIZE = 27136000KB , FILEGROWTH = …
Run Code Online (Sandbox Code Playgroud) 我有一个包含文件路径的字符串列表.
List<string> allFilesWithPathList = new List<string>();
allFilesWithPathList.Add(@"G:\Test\A.sql");
allFilesWithPathList.Add(@"G:\Test\B.sql");
allFilesWithPathList.Add(@"G:\Test\C.sql");
return allFilesWithPathList;
Run Code Online (Sandbox Code Playgroud)
我有另一个列表,其中包含文件的子集 - 但它只有文件名; 不是路径.
List<string> excludeList = new List<string>();
excludeList.Add("B.sql");
Run Code Online (Sandbox Code Playgroud)
现在我需要从allFilesWithPathList获取excludeList中不存在的文件.目前,我EXCEPT
在创建另一个仅包含文件名的列表后,正在执行以下操作.
List<string> allFileNamesOnlyList = new List<string>();
foreach (string fileNameWithPath in allFilesWithPathList)
{
//Remove path and get only file name
int pos = fileNameWithPath.LastIndexOf(@"\") + 1;
string value = fileNameWithPath.Substring(pos, fileNameWithPath.Length - pos);
allFileNamesOnlyList.Add(value);
}
//EXCEPT logic
List<string> eligibleListToProcess = allFileNamesOnlyList.Except(excludeList).ToList();
Run Code Online (Sandbox Code Playgroud)
在LINQ
不引入上述其他列表的情况下,使这种逻辑工作的最佳方法是什么?
注意:我正在使用 .Net 4.5
完整的代码
class Program
{
static void Main(string[] args)
{
List<string> allFilesWithPathList …
Run Code Online (Sandbox Code Playgroud) c# ×8
.net ×5
wcf ×3
asp.net ×1
javascript ×1
jquery ×1
linq ×1
msmq ×1
ooad ×1
soa ×1
sql-server ×1
string ×1
unit-testing ×1
wsdl ×1