Instantiate Entity based on GameObject from MonoBehaviour script

Is there a way to instantiate new Entity from MonoBehaviour script based on GameObject?

    public virtual void Place()
    { 
        ObjectDrag drag = gameObject.GetComponent<ObjectDrag>();
        Destroy(drag);
        Placed = true;
        //Invoke events of placements
    }

I have this method in building system Script attached to my GameObject, and I need to place Entity (Same as this GameObject) at same position as this “ghost” GameObject.