Доступ к возврату класса из другого класса в C# - PullRequest
0 голосов
/ 24 апреля 2020

Привет Я довольно новичок в кодировании, я пытаюсь разработать простое консольное приложение DO TNET. Консоль запрашивает имя пользователя, вводится и присваивается поле имени пользователя в классе пользователя, затем тот же процесс для пароля и, наконец, уровень разрешений, заданный int.

Существует метод в пользовательский класс, который возвращает строку, зависящую от int, введенную для уровня разрешений. Как я могу получить доступ к этой строке, чтобы отобразить ее как часть моей последней строки, в которой указано, кто вошел в консоль?

Program.cs

using System;

namespace SmartWaste
{
    class Program
    {
        static void Main(string[] args)
        {
            System.Console.WriteLine("Enter username:");
            var username = new User ();
            username.UserName = Console.ReadLine();
            System.Console.WriteLine("Enter password:");
            username.Password = Console.ReadLine();
            System.Console.WriteLine("Enter permissions level:");
            var PermissionLevelNumber = int.Parse(Console.ReadLine());
            username.PermissionsLevel(PermissionLevelNumber);

            Console.WriteLine($"Logged in as {username.UserName} with {username.Password} and {???PermissionsLevelreturn.string???}access level");       
        } 
    }
}

User.cs


using System;
using System.Collections.Generic;

namespace SmartWaste
{
    public class User 
    {
        public string UserName;
        public string Password;
        public string Permissions;
        public string PermissionsLevel(int permissionslevel)
        {
            if(permissionslevel == 0)
            return "basic";
            if(permissionslevel == 1)
            return "Intermediate";
            if(permissionslevel == 2)
            return "Advanced";
            if(permissionslevel == 3)
            return "Admin"; 
            else
            return "No Permissions set";

        }
    }
}

1 Ответ

0 голосов
/ 24 апреля 2020

Вы можете сделать это двумя способами:

string strPerm = username.PermissionsLevel(PermissionLevelNumber);
Console.WriteLine($"Logged in as {username.UserName} with {username.Password} and {strPerm} access level");

Или вы можете сжать все это в одну строку, если вам хочется:

Console.WriteLine($"Logged in as {username.UserName} with {username.Password} and {username.PermissionsLevel(PermissionLevelNumber)} access level");

Вы также должны сделать немного исследования операторов switch и перечислимых типов , чтобы помочь с более понятным кодом во время обучения

...