I'm trying to create better separation of concerns for code reuse in my program, that way I don't have a bloated controller that does all these different things.

for instance, in my application I have a user profile where users can upload a profile pic. If they don't customize their profile pic, I set the default profile pic to an avatar. I do this through a method to check if their profile pic string is null.

I created a folder called `HelperMethods` and created a class called `UserHelperMethods` which currently has one function:

```
namespace HiRatik.Stories.HelperMethods
{
    public class UserHelperMethods
    {
        //checks if the user's profile pic is null and sets it to default pic if it is
        public string GetUserProfilePic(ApplicationUser user)
        {
            if (user.ProfilePic == null)
            {
                user.ProfilePic = "profile_pic_default.png";
            }

            return user.ProfilePic;
        }
    }
}

```

[![enter image description here](https://i.stack.imgur.com/ldM3F.png)](https://i.stack.imgur.com/ldM3F.png)

Now, in the controller, under the controller's folder, I added `using HiRatik.Stories.HelperMethods;`

and tried to call the public function `GetUserProfilePic` from the `UserController`. But I'm getting an error on the implementation. I'd like to be able to place a lot of these general functions related to users in another class like `UserHelperMethods` to clean up the bulk in the controller, but I'm missing something on the implementation. the using statement at the top is grayed out, so it's not picking up the function call. Any ideas?

[![enter image description here](https://i.stack.imgur.com/vBFm9.png)](https://i.stack.imgur.com/vBFm9.png)