1

I am doing some simple validation inside my controller. I keep repeating the text in quotes below:

if (!validate)
{
    _MyServices.Notifier.Error
        ("There are some errors. Please correct them and 
        submit this Form again.");
    return false;
}

_MyServices is just a call to an API I utilize to, amongst other things, display a notification for errors in a specific part of my view. This is just an example.

What I would like to do is keep a string somewhere so I don't have to copy this every single time and it's in one place where one change is all that is needed.

I am not good with this stuff, so how would I go about doing that in my controller? Or maybe in a separate file that multiple controller's can call to? Thanks in advance.

4

1 回答 1

4

我会使用资源文件来存储您的字符串,然后可以通过 C# 本身引用它。

这也有助于将来对您的应用程序进行本地化。

要创建资源文件,只需右键单击您的文件夹,然后添加新项目。然后选择资源文件,它应该有扩展名 .resx

创建后,您可以在左列中添加一个键,第二列包含字符串。

在此处输入图像描述

确保将访问修饰符设置为 Public。

然后在您的代码中,您需要引用资源文件的默认命名空间,该命名空间与在同一文件夹中创建的任何类相同。

因此,例如,如果您要在应用程序的 Resources 目录中创建资源文件,那么您将像这样引用命名空间。

using MyApp.Resources;

然后你需要像这样在你的应用程序中引用特定的字符串。这使用了您将资源文件命名为“MyResources.resx”的示例

MyResources.Error;

资源文件创建一组静态属性,将您的 Key 用于字符串。您输入的键值中不能有空格,但可以包含一些符号。

于 2013-11-13T16:33:51.410 回答