Пример #1
0
        public void ReachAllInnerClasses()
        {
            //  #   Arrange.
            var     pr  = new PseudoRandom(nameof(ReachAllInnerClasses));
            var     obj = new MyPublicClass();
            dynamic sut = new ReachIn(obj);
            int     res;
            int     val;

            //  #   Act and Assert.
            val = pr.Int();

            //  We don't support finding privates in inherited classes
            //  so here we look for a field overloaded in the child class
            //  just as a sanity check.
            sut._myInnerPrivateClass._myPrivateField = val;
            res = sut._myInnerPrivateClass._myPrivateField;
            res.Should().Be(val);

            //  Keep looking for a visible (e.g. internal) field that comes
            //  from the base class.
            sut._myInnerPrivateClass._myInternalField = val;
            res = sut._myInnerPrivateClass._myInternalField;
            res.Should().Be(val);
            sut._myInnerInternalClass._myInternalField = val;
            res = sut._myInnerInternalClass._myInternalField;
            res.Should().Be(val);
            sut._myInnerProtectedClass._myInternalField = val;
            res = sut._myInnerProtectedClass._myInternalField;
            res.Should().Be(val);
            sut._myInnerPublicClass._myInternalField = val;
            res = sut._myInnerPublicClass._myInternalField;
            res.Should().Be(val);
        }
Пример #2
0
        static void Main()
        {
            // 1.

            MyPublicClass instanceA = new MyPublicClass();

            instanceA.PublicMethod();
            //instanceA.InternalMethod();             // Недоступен.
            //instanceA.InternalProtectedMethod();    // Недоступен.

            //MyInternalClass instance = new MyInternalClass();   // Недоступен.


            Console.WriteLine(new string('-', 20));


            // 2.

            MyClass instance = new MyClass();

            instance.PublicMethod();
            instance.MyMethod();     // Вызов InternalProtectedMethod().
            //instance.InternalMethod();     // Недоступен.


            // Delay.
            Console.ReadKey();
        }
Пример #3
0
        public void GetClass_KnownClass_ReturnClassesType(string className)
        {
            var res = new MyPublicClass().GetClass(className);

            res.Should().NotBeNull();
            res.Name.Should().Be(className);
        }
Пример #4
0
        static void Main(string[] args)
        {
            //创建程序集中的类的对象
            MyPublicClass obj = new MyPublicClass();

            //访问类的基本功能
            obj.i = 100;
            obj.f();
            //访问类的扩充功能
            obj.j = 200;
            obj.g();
        }
Пример #5
0
        static void Main(string[] args)
        {
            MyPublicClass instanceA = new MyPublicClass();

            instanceA.PublicMethod();
            //instanceA.InternalMethod();                  //Недоступен.
            //instanceA.InternalProtectedMethod();         //Недоступен.

            //MyInternalClass instance = new MyInternalClass(); библиотеку то мы подключили, но класс MyInternalClass не виден т.к он internal

            Console.WriteLine(new string('-', 30));

            MyClass instanceB = new MyClass(); //MyClass наследуется от MyPublicClass и у него есть InternalProtectedMethod(но его можно использовать в классе MyClass)

            instanceB.PublicMethod();
            instanceB.Method(); //внутри  метода Method есть метод InternalProtectedMethod
            //instanceA.InternalMethod();                  //Недоступен.

            //Delay
            Console.ReadKey();
        }
Пример #6
0
        /// <summary>
        /// Metoda publiczna zwracająca MyPublicClass
        /// </summary>
        /// <returns></returns>
        public MyPublicClass GiveMePublicClass()
        {
            var result = new MyPublicClass();

            return(new MyPublicClass());
        }
Пример #7
0
        /// <summary>
        /// 更改用户密码
        /// </summary>
        /// <param name="oldPwd">旧密码</param>
        /// <param name="newPwd1">新密码1</param>
        /// <param name="newPwd2">新密码2</param>
        /// <returns></returns>
        public ActionResult UpdateUserPwd(string oldPwd, string newPwd1, string newPwd2)
        {
            if (Session["UserType"] != null && Session["UserType"].ToString() == "Student")//学生更改密码
            {
                if (Session["UserNum"] != null)
                {
                    #region 执行学生更改密码操作
                    if (oldPwd != "" && newPwd1 != "" && newPwd2 != "")                                                                                                        //判断从客户端发送的数据是否为空
                    {
                        if (newPwd1 == newPwd2)                                                                                                                                //判断2次新密码是否一致
                        {
                            string         sql   = "Update StuInfo set StuPwd = @newStuPwd where DelFlag = 0 and StuNum = @StuNum and StuPwd = @oldStuPwd and State = @State"; //更新密码的sql语句
                            SqlParameter[] param =
                            {
                                new SqlParameter("@newStuPwd", newPwd1),
                                new SqlParameter("@StuNum",    Session["UserNum"].ToString()),
                                new SqlParameter("@oldStuPwd", oldPwd),
                                new SqlParameter("@State",     "正常")
                            };//参数列表

                            try
                            {
                                int k = MyPublicClass.UpdateUserPwd(sql, param);//执行数据库更新操作,返回结果是受影响行数,大于0代表成功
                                if (k == 1)
                                {
                                    return(Content("Success"));
                                }
                                else
                                {
                                    return(Content("Error2"));
                                }
                            }
                            catch
                            {
                                return(RedirectToAction("../Home/Error404"));
                            }
                        }
                        else
                        {
                            return(Content("Error1"));//表单出错
                        }
                    }
                    else
                    {
                        return(Content("Error1"));//表单出错
                    }
                    #endregion
                }
                else
                {
                    return(RedirectToAction("../Home/Login"));
                }
            }
            else if (Session["UserType"] != null && Session["UserType"].ToString() == "Teacher")//教师更改密码
            {
                if (Session["UserNum"] != null)
                {
                    #region 执行教师更改密码操作
                    if (oldPwd != "" && newPwd1 != "" && newPwd2 != "")
                    {
                        if (newPwd1 == newPwd2)
                        {
                            string         sql   = "Update TeacherInfo set TeacherPwd = @newTeacherPwd where DelFlag = 0 and TeacherNum = @TeacherNum and TeacherPwd = @oldTeacherPwd and State = @State";
                            SqlParameter[] param =
                            {
                                new SqlParameter("@newTeacherPwd", newPwd1),
                                new SqlParameter("@TeacherNum",    Session["UserNum"].ToString()),
                                new SqlParameter("@oldTeacherPwd", oldPwd),
                                new SqlParameter("@State",         "正常")
                            };

                            try
                            {
                                int k = MyPublicClass.UpdateUserPwd(sql, param);
                                if (k == 1)
                                {
                                    return(Content("Success"));
                                }
                                else
                                {
                                    return(Content("Error2"));
                                }
                            }
                            catch (Exception e)
                            {
                                throw e;
                            }
                        }
                        else
                        {
                            return(Content("Error1"));//表单出错
                        }
                    }
                    else
                    {
                        return(Content("Error1"));//表单出错
                    }
                    #endregion
                }
                else
                {
                    return(RedirectToAction("../Home/Login"));
                }
            }
            else if (Session["UserType"] != null && Session["UserType"].ToString() == "Admin")
            {
                if (Session["UserNum"] != null)
                {
                    #region 执行管理员更改密码操作
                    if (oldPwd != "" && newPwd1 != "" && newPwd2 != "")
                    {
                        if (newPwd1 == newPwd2)
                        {
                            string         sql   = "Update AdminInfo set AdminPwd = @newAdminPwd where DelFlag = 0 and AdminNum = @AdminNum and AdminPwd = @oldAdminPwd and State = @State";
                            SqlParameter[] param =
                            {
                                new SqlParameter("@newAdminPwd", newPwd1),
                                new SqlParameter("@AdminNum",    Session["UserNum"].ToString()),
                                new SqlParameter("@oldAdminPwd", oldPwd),
                                new SqlParameter("@State",       "正常")
                            };

                            try
                            {
                                int k = MyPublicClass.UpdateUserPwd(sql, param);
                                if (k == 1)
                                {
                                    return(Content("Success"));
                                }
                                else
                                {
                                    return(Content("Error2"));
                                }
                            }
                            catch (Exception e)
                            {
                                throw e;
                            }
                        }
                        else
                        {
                            return(Content("Error1"));//表单出错
                        }
                    }
                    else
                    {
                        return(Content("Error1"));//表单出错
                    }
                    #endregion
                }
                else
                {
                    return(RedirectToAction("../Home/Login"));
                }
            }
            else
            {
                return(RedirectToAction("../Home/Login"));
            }
        }
Пример #8
0
        /// <summary>
        /// 验证登录
        /// </summary>
        /// <param name="username">用户名</param>
        /// <param name="password">密码</param>
        /// <param name="usertype">角色</param>
        /// <returns></returns>
        public ActionResult CheckLogin(string username, string password, string usertype)
        {
            if (usertype.Trim() == "1")//游客
            {
                return(JavaScript("alert('对不起,本系统暂时不对游客开放,请登录!');return;"));
            }
            else if (usertype == "2")//学生
            {
                #region 学生登录检验

                //StuInfo stu = new StuInfo();
                //stu = stu.CheckLogin(username, password);

                //string checkLoginResult = s1.CheckLogin(username,password);


                string         sql   = "Select * from StuInfo where StuNum = @StuNum and  StuPwd = @StuPwd and DelFlag = 0";
                SqlParameter[] param =
                {
                    new SqlParameter("@StuNum", username),
                    new SqlParameter("@StuPwd", password)
                };

                string checkLoginResult = MyPublicClass.CheckLogin(sql, param);


                if (checkLoginResult == "Success")
                {
                    //ViewBag.Stu = stu;
                    Session["UserType"] = "Student";
                    Session["UserNum"]  = username;

                    return(Content("Student_Success"));
                }
                else if (checkLoginResult == "Error_State")//该用户被禁用,请与管理员联系!
                {
                    return(Content("Error2"));
                }
                else if (checkLoginResult == "Error_UserNotExist")//用户名或者密码错误!
                {
                    return(Content("Error1"));
                }
                else if (checkLoginResult == "Error_Check")//登录验证出错,返回404
                {
                    return(Content("Error3"));
                }
                else if (checkLoginResult == "ReadyToCheck")//待检验状态
                {
                    return(Content("Error4"));
                }
                else
                {
                    return(Content("Error5"));
                }

                #endregion
            }
            else if (usertype == "3")//教师
            {
                #region 教师登录检验

                //验证登录的SQL语句
                string sql = "Select * from TeacherInfo where TeacherNum = @TeacherNum and  TeacherPwd = @TeacherPwd and DelFlag = 0";

                //参数列表
                SqlParameter[] param =
                {
                    new SqlParameter("@TeacherNum", username),
                    new SqlParameter("@TeacherPwd", password)
                };

                //接收登录验证的结果
                string checkLoginResult = MyPublicClass.CheckLogin(sql, param);

                //对结果进行检查
                if (checkLoginResult == "Success")
                {
                    //ViewBag.Stu = stu;
                    Session["UserType"] = "Teacher";
                    Session["UserNum"]  = username;

                    return(Content("Teacher_Success"));
                }
                else if (checkLoginResult == "Error_State")//该用户被禁用,请与管理员联系!
                {
                    return(Content("Error2"));
                }
                else if (checkLoginResult == "Error_UserNotExist")//用户名或者密码错误!
                {
                    return(Content("Error1"));
                }
                else if (checkLoginResult == "Error_Check")//登录验证出错,返回404
                {
                    return(Content("Error3"));
                }
                else if (checkLoginResult == "ReadyToCheck")//待检验状态
                {
                    return(Content("Error4"));
                }
                else
                {
                    return(Content("Error5"));
                }

                #endregion
            }
            else if (usertype == "4")//管理员
            {
                #region 管理员登录检验

                //验证登录的SQL语句
                string sql = "Select * from AdminInfo where AdminNum = @AdminNum and  AdminPwd = @AdminPwd and DelFlag = 0";

                //参数列表
                SqlParameter[] param =
                {
                    new SqlParameter("@AdminNum", username),
                    new SqlParameter("@AdminPwd", password)
                };

                //接收登录验证的结果
                string checkLoginResult = MyPublicClass.CheckLogin(sql, param);

                //对结果进行检查
                if (checkLoginResult == "Success")
                {
                    Session["UserType"] = "Admin";
                    Session["UserNum"]  = username;

                    return(Content("Admin_Success"));
                }
                else if (checkLoginResult == "Error_State")//该用户被禁用,请与管理员联系!
                {
                    return(Content("Error2"));
                }
                else if (checkLoginResult == "Error_UserNotExist")//用户名或者密码错误!
                {
                    return(Content("Error1"));
                }
                else if (checkLoginResult == "Error_Check")//登录验证出错,返回404
                {
                    return(Content("Error3"));
                }
                else if (checkLoginResult == "ReadyToCheck")//待检验状态
                {
                    return(Content("Error4"));
                }
                else
                {
                    return(Content("Error5"));
                }

                #endregion
            }
            else
            {
                return(View());
            }
        }