Создание файлов ресурсов
Обновлен: Ноябрь 2007
Библиотека базовых классов .NET Framework содержит несколько классов в пространстве имен System.Resources Namespace, применяемых при создании ресурсов и работе с ними в приложениях. Для получения подробного описания правил использования каждого класса щелкните ссылку на соответствующий раздел справки.
Класс |
Описание |
---|---|
Считывает ресурсы из потока. |
|
Записывает ресурсы в поток. |
|
Считывает ресурсы в двоичном формате файла ресурсов, используемом средой выполнения по умолчанию. Этот класс — стандартная реализация интерфейса IResourceReader. |
|
Записывает ресурсы в двоичном формате файла ресурсов, используемом средой выполнения по умолчанию. Этот класс — стандартная реализация интерфейса IResourceWriter. |
|
Предоставляет возможность извлекать ресурсы из файлов .resx. Это специализированная реализация интерфейса IResourceReader. |
|
Предоставляет возможность создавать файлы .resx из указанных ресурсов. Это специализированная реализация интерфейса IResourceWriter. Для преобразования файлов .resx в формат .resources следует использовать генератор файлов ресурсов (Resgen.exe). |
Файлы ресурсов можно создавать тремя способами. Если ресурсы содержат только строковые данные, самый простой метод — вручную создать текстовый файл. Если ресурсы содержат объекты или сочетание строк и объектов, следует создать файл .resx или файл .resources. Для получения сведений о каждом из этих типов файлов щелкните соответствующую ссылку.
Примечание. |
---|
Не следует использовать файлы ресурсов для хранения паролей, секретных сведений или личных данных. |
Для записи объектов в файл ресурсов необходимо, чтобы объекты были сериализуемыми. Такие типы данных .NET Framework, как строка, целое число и ряд типов Windows Forms — Bitmap, Iconи Image — могут быть десериализованы недостаточно надежным кодом. Для десериализации остальных типов данных требуется, чтобы вызывающему коду было предоставлено разрешение SecurityPermission с установленным флагом SerializationFormatter.
Ресурсы, отмеченные как закрытые, доступны только в сборке, в которой они расположены. Так как во вспомогательных сборках отсутствует код, закрытые для них ресурсы становятся полностью недоступными. Поэтому ресурсы, включенные во вспомогательные сборки, всегда должны быть открытыми, чтобы они были доступны из основной сборки. Ресурсы, включенные в основную сборку, всегда доступны из нее, независимо от того, являются ли они открытыми или закрытыми.
Приложение не должно зависеть от ресурсов из сборки, не созданной его разработчиком и не поставляемой в комплекте приложения. Зависимость от ресурсов сторонних разработчиков может сделать приложение неработоспособным, поскольку никто не гарантирует, что эти ресурсы будут представлены в следующей версии или пакете обновления.
В сборки общей среды исполнения и вспомогательные сборки следует включать только файлы .resources. Генератор файлов ресурсов (Resgen.exe) преобразует текстовые файлы (.txt) и основанные на XML файлы ресурсов (.resx) в файлы .resources, создавая оболочки для методов, реализованных классами ResourceReader, ResourceWriter, ResXResourceReader и ResXResourceWriter. Программу Resgen.exe можно использовать и для преобразования файлов .resources обратно в файлы .resx и .txt.
Microsoft SDK (пакет средств разработки программного обеспечения) для Windows содержит ряд примеров, которые показывают принципы работы с файлами .resources. См. разделы Ресурсы в приложениях, Примеры использования ASP.NET (Пример "Локализация") и Примеры решения типичных задач ("Инструкции: ресурсы").
См. также
Основные понятия
Упаковка и развертывание ресурсов