Reportviewer :Method not found: 'System.String System.String.Format(System.IFormatProvider, System.String, System.Object)'.

Kedar Bhapkar 1 Reputation point
2022-11-22T12:12:08.757+00:00

i'm getting below Error while loading Report

Method not found: 'System.String System.String.Format(System.IFormatProvider, System.String, System.Object)'.

262979-error.png

ASP.NET
ASP.NET
A set of technologies in the .NET Framework for building web applications and XML web services.
3,249 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Lan Huang-MSFT 25,471 Reputation points Microsoft Vendor
    2022-11-23T02:48:11.117+00:00

    Hi @Kedar Bhapkar ,
    According to its MSDN page,
    https://learn.microsoft.com/en-us/dotnet/api/system.string.format?redirectedfrom=MSDN&view=net-7.0#System_String_Format_System_IFormatProvider_System_String_System_Object_
    the overload you're using is only supported on .NET 4.6.
    Either configure the host to run .NET 4.6 or change the target framework of the project to 4.5 and recompile.
    In 4.5 there's a params object[] overload which will then be chosen, without having to alter your code.
    https://learn.microsoft.com/en-us/dotnet/api/system.string.format?redirectedfrom=MSDN&view=netframework-4.5#System_String_Format_System_IFormatProvider_System_String_System_Object_
    If you can neither upgrade host to 4.6 nor downgrade project to 4.5 there is a workaround : pass an "object[]" as args instead of an "object".
    So you will force usage of the "params object[]" overload. Example :
    return string.Format(formatProvider, "{0:" + format + "}", new object[] { value });
    Best regards,
    Lan Huang


    If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    0 comments No comments