Couple of questions:
If i build an application for .Net 6.0, can it have dependencies on libraries (e.g. nuget packages) built for earlier runtimes? In particular, i m interested in .Net 5.0 and .Net Core 3.1. From trying it, it seems to work, but I couldn't find any official answer/guidelines from Microsoft on this. Is there a doc link perhaps?
Conversely, if I have an SDK-style project built for .Net 5.0, can application built for .Net 6.0 use it, or do i have to retarget it? What if my SDK project was built for .Net Core 3.1?
If the answer to the above questions is yes, then what is the purpose of supporting multiple TFMs in the same project? Why not just use the earliest one if it's compatible? In particular, if i already have SDK-style project targeting .Net 5.0, would there be any reason to make it multi-target with both .Net 5.0 and .Net 6.0 included?