System.UriFormatException with Invalid URI: The format of the URI could not be determined message is one of the errors that is almost always related to code.
Here is the stack trace and description from a DebugDiag dump:
Invalid URI: The format of the URI could not be determined.
at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
at Varonis.EventHandlerAuditor.WebApplicationConfiguration.IsWebApplicationMatches(String webApplicationUrl)
If the input value is not what the application expected, this exception is generated. In other words, the application was expecting a valid URI but the value it received wasn’t in URI format.
In my case, the value was “SERVER01“ which is not a valid URI so that the application threw an error at the last line below.
public static bool IsWebApplicationMatches(string webApplicationUrl)
Uri uri = new Uri(webApplicationUrl);
This issue may occur because of user behavior (the value submitted into the function). No matter what the root cause is, the application should catch the exception. Implement try-catch block in that function to handle this exception.
It also helps finding the assembly that is throwing the error (look at stack trace for this information). If it’s a third-party component, you will need to contact them. They might already have a fix or updated assembly.
You can also try to figure out how that value is passed to that function. Review the inputs and use-cases. Ask your user about the steps to reproduce it. It could be because of a user who enters invalid information in a form. However, no matter what the input is, the application should catch the exception.