IsolatedStorageFile.GetStore Метод

Определение

Получает изолированное хранилище, соответствующее заданному домену приложения и объектам подтверждения сборки и изолированной области хранения.

Перегрузки

Имя Описание
GetStore(IsolatedStorageScope, Object)

Получает изолированное хранилище, соответствующее заданному удостоверению приложения.

GetStore(IsolatedStorageScope, Type)

Получает изолированное хранилище, соответствующее области изоляции и объекту удостоверения приложения.

GetStore(IsolatedStorageScope, Object, Object)

Получает изолированное хранилище, соответствующее заданному домену приложения и объектам доказательств сборки.

GetStore(IsolatedStorageScope, Type, Type)

Получает изолированное хранилище, соответствующее изолированной области хранения, учитывая типы доказательств приложения и сборок.

GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)

Получает изолированное хранилище, соответствующее заданному домену приложения, и объектам и типам доказательств сборки.

GetStore(IsolatedStorageScope, Object)

Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs

Получает изолированное хранилище, соответствующее заданному удостоверению приложения.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, System::Object ^ applicationIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, object? applicationIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, object applicationIdentity);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * obj -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, applicationIdentity As Object) As IsolatedStorageFile

Параметры

scope
IsolatedStorageScope

Побитовое сочетание значений перечисления.

applicationIdentity
Object

Объект, содержащий доказательства удостоверения приложения.

Возвращаемое значение

Объект, представляющий параметры.

Исключения

Не предоставлены достаточные разрешения на изолированное хранилище.

Удостоверение applicationIdentity не было передано.

Недопустимый scope .

Не удается инициализировать изолированное расположение хранилища.

–или–

scope содержит значение Applicationперечисления, но идентификатор приложения вызывающего объекта не может быть определен, так как ActivationContext возвращается nullтекущий домен приложения.

–или–

scope содержит значение Domain, но разрешения для домена приложения не могут быть определены.

–или–

scope содержит значение Assembly, но разрешения для вызываемой сборки не могут быть определены.

Комментарии

Note

scope Если параметр и IsolatedStorageScope.Application домен приложения, в котором установлена сборка, не имеетIsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Позже пытается создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершится сбоем IsolatedStorageException.

См. также раздел

Применяется к

GetStore(IsolatedStorageScope, Type)

Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs

Получает изолированное хранилище, соответствующее области изоляции и объекту удостоверения приложения.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, Type ^ applicationEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, Type? applicationEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, Type applicationEvidenceType);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * Type -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, applicationEvidenceType As Type) As IsolatedStorageFile

Параметры

scope
IsolatedStorageScope

Побитовое сочетание значений перечисления.

applicationEvidenceType
Type

Объект, содержащий удостоверение приложения.

Возвращаемое значение

Объект, представляющий параметры.

Исключения

Не предоставлены достаточные разрешения на изолированное хранилище.

Удостоверение applicationEvidenceType не было передано.

Недопустимый scope .

Не удается инициализировать изолированное расположение хранилища.

–или–

scope содержит значение Applicationперечисления, но удостоверение приложения вызывающего объекта невозможно определить, так как ActivationContext возвращен nullтекущий домен приложения.

–или–

scope содержит значение Domain, но разрешения для домена приложения не могут быть определены.

–или–

scope содержит значение Assembly, но разрешения для вызываемой сборки не могут быть определены.

Комментарии

Note

scope Если параметр и Application домен приложения, в котором установлена сборка, не имеетIsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Позже пытается создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершится сбоем IsolatedStorageException.

См. также раздел

Применяется к

GetStore(IsolatedStorageScope, Object, Object)

Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs

Получает изолированное хранилище, соответствующее заданному домену приложения и объектам доказательств сборки.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, System::Object ^ domainIdentity, System::Object ^ assemblyIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, object? domainIdentity, object? assemblyIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, object domainIdentity, object assemblyIdentity);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * obj * obj -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, domainIdentity As Object, assemblyIdentity As Object) As IsolatedStorageFile

Параметры

scope
IsolatedStorageScope

Побитовое сочетание значений перечисления.

domainIdentity
Object

Объект, содержащий доказательства удостоверения домена приложения.

assemblyIdentity
Object

Объект, содержащий доказательства удостоверения сборки кода.

Возвращаемое значение

Объект, представляющий параметры.

Исключения

Не предоставлены достаточные разрешения на изолированное хранилище.

Ни domainIdentityassemblyIdentity в чем не был передан. Это проверяет, используется ли правильный конструктор.

–или–

Либо domainIdentity или естьassemblyIdentity.null

Недопустимый scope .

Не удается инициализировать изолированное расположение хранилища.

–или–

scope содержит значение Applicationперечисления, но удостоверение приложения вызывающего объекта невозможно определить, так как ActivationContext возвращен nullтекущий домен приложения.

–или–

scope содержит значение Domain, но разрешения для домена приложения не могут быть определены.

–или–

scope содержит значение Assembly, но разрешения для вызываемой сборки не могут быть определены.

Комментарии

Эта форма наиболее полезна для административного GetStore кода, который должен открыть хранилище, как если бы это была другая сборка. Хранилище открывается для предоставленных доказательств, а не для текущей выполняемой сборки.

Note

scope Если параметр и Domain домен приложения, в котором установлена сборка, не имеетIsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Позже пытается создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершится сбоем IsolatedStorageException.

См. также раздел

Применяется к

GetStore(IsolatedStorageScope, Type, Type)

Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs
Исходный код:
IsolatedStorageFile.cs

Получает изолированное хранилище, соответствующее изолированной области хранения, учитывая типы доказательств приложения и сборок.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, Type ^ domainEvidenceType, Type ^ assemblyEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, Type? domainEvidenceType, Type? assemblyEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * Type * Type -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, domainEvidenceType As Type, assemblyEvidenceType As Type) As IsolatedStorageFile

Параметры

scope
IsolatedStorageScope

Побитовое сочетание значений перечисления.

domainEvidenceType
Type

Тип Evidence , который можно выбрать из списка Evidence присутствующих в домене вызывающего приложения. null IsolatedStorage позволяет объекту выбрать доказательства.

assemblyEvidenceType
Type

Тип Evidence , который можно выбрать из списка Evidence присутствующих в домене вызывающего приложения. null IsolatedStorage позволяет объекту выбрать доказательства.

Возвращаемое значение

Объект, представляющий параметры.

Исключения

Не предоставлены достаточные разрешения на изолированное хранилище.

Недопустимый scope .

Указанный тип доказательства отсутствует в списке доказательств сборки.

–или–

Не удается инициализировать изолированное расположение хранилища.

–или–

scope содержит значение Applicationперечисления, но удостоверение приложения вызывающего объекта невозможно определить, так как ActivationContext возвращен nullтекущий домен приложения.

–или–

scope содержит значение Domain, но разрешения для домена приложения не могут быть определены.

–или–

scope содержит Assembly, но разрешения для вызываемой сборки не могут быть определены.

Примеры

В следующем примере кода демонстрируется GetStore метод. Полный контекст этого примера см. в обзоре IsolatedStorageFile .


// Retrieve an IsolatedStorageFile for the current Domain and Assembly.
IsolatedStorageFile isoFile =
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User |
    IsolatedStorageScope.Assembly |
    IsolatedStorageScope.Domain,
    null,
    null);

IsolatedStorageFileStream isoStream =
    new IsolatedStorageFileStream("substituteUsername",
    System.IO.FileMode.Open,
    System.IO.FileAccess.Read,
     System.IO.FileShare.Read);
' Retrieve an IsolatedStorageFile for the current Domain and Assembly.
Dim isoFile As IsolatedStorageFile = _
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User _
    Or IsolatedStorageScope.Assembly _
    Or IsolatedStorageScope.Domain, Nothing, Nothing)

Dim isoStream As New IsolatedStorageFileStream("substituteUsername", System.IO.FileMode.Open, _
    System.IO.FileAccess.Read, System.IO.FileShare.Read)

Комментарии

Это перегрузка GetStore , которая, скорее всего, будет вызвана из кода приложения.

Эта перегрузка GetStore открывает изолированное хранилище для типов доказательств, передаваемых в.

Note

scope Если параметр и Domain домен приложения, в котором установлена сборка, не имеетIsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Позже пытается создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершится сбоем IsolatedStorageException.

См. также раздел

Применяется к

GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)

Получает изолированное хранилище, соответствующее заданному домену приложения, и объектам и типам доказательств сборки.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, System::Security::Policy::Evidence ^ domainEvidence, Type ^ domainEvidenceType, System::Security::Policy::Evidence ^ assemblyEvidence, Type ^ assemblyEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore(System.IO.IsolatedStorage.IsolatedStorageScope scope, System.Security.Policy.Evidence domainEvidence, Type domainEvidenceType, System.Security.Policy.Evidence assemblyEvidence, Type assemblyEvidenceType);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * System.Security.Policy.Evidence * Type * System.Security.Policy.Evidence * Type -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, domainEvidence As Evidence, domainEvidenceType As Type, assemblyEvidence As Evidence, assemblyEvidenceType As Type) As IsolatedStorageFile

Параметры

scope
IsolatedStorageScope

Побитовое сочетание значений перечисления.

domainEvidence
Evidence

Объект, содержащий удостоверение домена приложения.

domainEvidenceType
Type

Тип удостоверения, который следует выбрать из доказательств домена приложения.

assemblyEvidence
Evidence

Объект, содержащий удостоверение сборки кода.

assemblyEvidenceType
Type

Тип удостоверения, который следует выбрать из доказательства сборки кода приложения.

Возвращаемое значение

Объект, представляющий параметры.

Исключения

Не предоставлены достаточные разрешения на изолированное хранилище.

domainEvidence Идентификатор assemblyEvidence или удостоверение не передано.

Недопустимый scope .

Не удается инициализировать изолированное расположение хранилища.

–или–

scope содержит значение Applicationперечисления, но удостоверение приложения вызывающего объекта невозможно определить, так как ActivationContext возвращен nullтекущий домен приложения.

–или–

scope содержит значение Domain, но разрешения для домена приложения не могут быть определены.

–или–

scope содержит значение Assembly, но разрешения для вызываемой сборки не могут быть определены.

Примеры

Следующий пример кода получает хранилище на основе доказательств издателя.

using System;
using System.IO;
using System.IO.IsolatedStorage;
using System.Security;
using System.Security.Policy;
using System.Security.Permissions;
using System.Security.Cryptography.X509Certificates;

class Program
{
    static void Main(string[] args)
    {
        try
        {

            if (Test())
            {
                Console.WriteLine("PASSED.");
                Environment.ExitCode = 100;
            }
            else
            {
                Console.WriteLine("FAILED.");
                Environment.ExitCode = 101;
            }
        }
        catch (Exception e)
        {
            Console.Write("Exception occurred: {0}", e.ToString());
            Environment.ExitCode = 101;
        }
        return;
    }

    public static Boolean Test()
    {
        Boolean bRes = true;

        Evidence evidence1 = GetTestEvidence();
        Evidence evidence2 = GetTestEvidence();

        IsolatedStorageFile isf = IsolatedStorageFile.GetStore(
                                    IsolatedStorageScope.User | IsolatedStorageScope.Assembly,
                                    evidence1,
                                    typeof(System.Security.Policy.Publisher),
                                    evidence2,
                                    typeof(System.Security.Policy.Publisher));

        IsolatedStorageFileStream isfs = new IsolatedStorageFileStream("AdminEvd1.testfile", FileMode.OpenOrCreate, isf);
        isfs.WriteByte(5);
        isfs.Flush();
        isfs.Close();

        return bRes;
    }

    public static Evidence GetTestEvidence()
    {
        // For demonsration purposes, use a blank certificate.
        Publisher pub = new Publisher(new X509Certificate(new Byte[64]));
        Object[] arrObj = new Object[1];
        arrObj[0] = (Object)pub;
        return new Evidence(arrObj, arrObj);
    }
}
Imports System.IO
Imports System.IO.IsolatedStorage
Imports System.Security
Imports System.Security.Policy
Imports System.Security.Permissions
Imports System.Security.Cryptography.X509Certificates

Class Program

    Public Shared Sub Main(ByVal args() As String)
        Try
            If Test Then
                Console.WriteLine("PASSED.")
                Environment.ExitCode = 100
            Else
                Console.WriteLine("FAILED.")
                Environment.ExitCode = 101
            End If
        Catch e As Exception
            Console.Write("Exception occurred: {0}", e.ToString)
            Environment.ExitCode = 101
        End Try
        Return
    End Sub

    Public Shared Function Test() As Boolean
        Dim bRes As Boolean = True
        Dim evidence1 As Evidence = GetTestEvidence
        Dim evidence2 As Evidence = GetTestEvidence
        Dim isf As IsolatedStorageFile = IsolatedStorageFile.GetStore((IsolatedStorageScope.User _
         Or IsolatedStorageScope.Assembly), _
         evidence1, _
         GetType(System.Security.Policy.Publisher), _
         evidence2, _
         GetType(System.Security.Policy.Publisher))
        Dim isfs As IsolatedStorageFileStream = New IsolatedStorageFileStream("AdminEvd1.testfile", _
         FileMode.OpenOrCreate, isf)
        isfs.WriteByte(5)
        isfs.Flush()
        isfs.Close()
        Return bRes
    End Function

    Public Shared Function GetTestEvidence() As Evidence

        ' For demonsration purposes, use a blank certificate.
        Dim CertTemp(63) As Byte
        Dim pub As Publisher = New Publisher(New X509Certificate(CertTemp))
        Dim arrObj(0) As Object
        arrObj(0) = CType(pub, Object)
        Return New Evidence(arrObj, arrObj)
    End Function
End Class

Комментарии

Note

scope Если параметр и Domain домен приложения, в котором установлена сборка, не имеетIsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Позже пытается создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершится сбоем IsolatedStorageException.

См. также раздел

Применяется к