This is a very good question! One that I have been wondering about myself. I found this answer to be very good:
One DbContext per web request... why?
Is an extra open DB context inconsequential?
If you look at any auto-generated controller code for MVC applications, you will notice how each controller always instantiates another DBContext object. I personally understand this such that having several active contexts in principle is not an issue. Personally I rather create another DBContext instance than complicating the code by by sending them to Methods, and having to keep track of when to save changes, and what gets affected by the savechange action (talked about in the link). On the other hand, I would not instantiate new DBContexts for every iteration of a loop, or any other cases where the rather small overhead would stack.
Hope this helps.