小编use*_*672的帖子

C#比较字符串ignoreCase

在这个测试方法中,我需要比较user3的字符串,而忽略区分大小写.我想我应该使用CultureInfo.InvariantCulture来忽略Case.这是实现这一目标的最佳方式,还是有更好的方法?

            //set test to get user 
            AsaMembershipProvider prov = this.GetMembershipProvider();        

            //call get users
            MembershipUser user1 = prov.GetUser("test.user", false);
            //ask for the username with deliberate case differences
            MembershipUser user2 = prov.GetUser("TeSt.UsEr", false);
            //getting a user with Upper and lower case in the username.
            MembershipUser user3 = prov.GetUser("Test.User", false);

            //prove that you still get the user, 
            Assert.AreNotEqual(null, user1);
            Assert.AreNotEqual(null, user2);

            //test by using the “.ToLower()” function on the resulting string.
            Assert.AreEqual(user1.UserName.ToLower(), user2.UserName.ToLower());
            Assert.AreEqual(user1.UserName, "test.user");
            Assert.AreEqual(user3.UserName, "test.user");
Run Code Online (Sandbox Code Playgroud)

c# string compare ignore-case

5
推荐指数
1
解决办法
9277
查看次数

"方法必须有一个返回类型"和"返回后不能跟一个对象表达式"

我将此方法添加到公共静态类

    public static LogMessage(Exception ex)
    {
        Trace.WriteLine(ex.ToString());
        return ex; 
    }
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我收到一条消息,说"方法必须有一个返回类型"

在返回时,我还收到一条消息,说"由于'Util.logMessage(System.Exception)'返回void,返回关键字后面不能跟一个对象表达式"

我该如何纠正?

c# return syntax-error

1
推荐指数
1
解决办法
3406
查看次数

如何更改 Assert.Fail 消息

当我运行这个测试时,我得到一个“Assert.Fail failed. Assert.AreEqual failed. Expected:. Actual:.”

如何在错误消息末尾没有“实际:”的情况下使此测试通过或失败?我使用“Assert.Fail(ex.Message);” 在其他几个测试中,所以我无法直接更改消息。

    [TestMethod]
    public void TestCreateUser()
    {
       try
       {
          AsaMembershipProvider prov = this.GetMembershipProvider();
          //call get user
          MembershipCreateStatus status;
          MembershipUser user = prov.CreateUser("testUserX", "12345", "test.UserX@abc.com", "", "", true, null, out status);

          Assert.AreNotEqual(status, MembershipCreateStatus.Success);
          var isAuthenticated = prov.ValidateUser(user.UserName, "12345");

          Assert.IsTrue(isAuthenticated);
          Assert.AreEqual(user.UserName, "testUserX");
          Assert.AreEqual(user.Email, "test.userx@abc.com");
          Assert.IsTrue(user.CreationDate==DateTime.Now);
          //TODO Asserts

       }

       catch (Exception ex)
       {
          LogMessage(ex);
          Assert.Fail(ex.Message);
       }
    }
Run Code Online (Sandbox Code Playgroud)

c# unit-testing visual-studio-2010

0
推荐指数
1
解决办法
1万
查看次数