hello. so i have been looking around the net for a few days so i have seen the .Net version solution but it didn’t help me. So here is the problem. I have made a dll, i have a reference to the dll (FluidStudios) the reference for the dll on the server side works just fine nothing goes wrong. when i try to reference the dll on the client side i face this problem. if i use the “using FluidStudios;” that becomes the error. if i do not, all the references to this throughout the script becomes the error. and a note, VS seems to see no problems with the using, or anything but unity does not accept it. here is the code:`
using System.Collections;
using System.Collections.Generic;
using FluidStudios;
using UnityEngine;
using UnityEngine.UI;

public class ClientData : MonoBehaviour
{

public static ClientData instance;
public Network network;

[Header("Login")]
public Text _loginUsername;
public Text _loginPassword;

[Header("Registration")]
public Text _username;
public Text _password;
public Text _password2;

void Awake()
{
    instance = this;
}

public void SendDataToServer(byte[] data)
{
    FluidStudios.FluidStudios buffer = new FluidStudios.FluidStudios();
    buffer.WriteBytes(data);
    network.myStream.Write(buffer.ToArray(), 0, buffer.ToArray().Length);
    buffer = null;
}

public void SendAccount()
{
    FluidStudios.FluidStudios buffer = new FluidStudios.FluidStudios();
    buffer.WriteInteger(1);

    if (_username.text == string.Empty)
    {
        Debug.Log("Please insert a username.");
        return;
    }

    if (_password.text == string.Empty)
    {
        Debug.Log("Please insert a password.");
        return;
    }

    if (_password2.text != _password.text)
    {
        Debug.Log("Your password do not match.");
        return;
    }

    buffer.WriteString(_username.text);
    buffer.WriteString(_password.text);

    SendDataToServer(buffer.ToArray());
    buffer = null;
}

public void SendLogin()
{
    FluidStudios.FluidStudios buffer = new FluidStudios.FluidStudios();
    buffer.WriteInteger(2);

    if (_loginUsername.text == string.Empty)
    {
        Debug.Log("Please insert a username.");
        return;
    }

    if (_loginPassword.text == string.Empty)
    {
        Debug.Log("Please insert a password.");
        return;
    }

    buffer.WriteString(_loginUsername.text);
    buffer.WriteString(_loginPassword.text);

    SendDataToServer(buffer.ToArray());
    buffer = null;
}

}
`

You can not “reference” an external DLL in Unity. Unity does not use or build on top of the .NET framework like normal .NET applications do. Unity uses it’s own framework which is shipped with your build. If you have a DLL you want to use in your Unity game you have to physically copy it into your Assets folder. Note that if that DLL has other dependencies they need to be copied as well.

You can not “add references” in the C# project as the project files are only generated for IDE support. The project file and its settings are not used by Unity. Unity “manually” compiles your scripts by directly invoking the compiler

Note: Not all DLLs can be used inside a Unity project. Which DLLs can be used highly depends on your targetplatform and which scripting backend is used.