I'm looking for something akin to Path.Combine method that will help me correctly combine absolute and relative paths. For example, I want
Path.Combine(@"c:\alpha\beta", @"..\gamma");
to yield c:\alpha\gamma instead of c:\alpha\..\gamma as Path.Combine does. Is there any easy way of accomplishing this? Needless to say, I also want to period . path or multiple .. paths (e.g., ..\..\) to work correctly.