UnsignedPublishLicense Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса UnsignedPublishLicense.
Перегрузки
UnsignedPublishLicense() |
Инициализирует новый экземпляр класса UnsignedPublishLicense. |
UnsignedPublishLicense(String) |
Инициализирует новый экземпляр класса из указанного UnsignedPublishLicense шаблона лицензии на публикацию XrML. |
UnsignedPublishLicense()
Инициализирует новый экземпляр класса UnsignedPublishLicense.
public:
UnsignedPublishLicense();
public UnsignedPublishLicense ();
Public Sub New ()
Комментарии
UnsignedPublishLicense создает пустую и неподписаемую лицензию на публикацию.
Применяется к
UnsignedPublishLicense(String)
Инициализирует новый экземпляр класса из указанного UnsignedPublishLicense шаблона лицензии на публикацию XrML.
public:
UnsignedPublishLicense(System::String ^ publishLicenseTemplate);
public UnsignedPublishLicense (string publishLicenseTemplate);
new System.Security.RightsManagement.UnsignedPublishLicense : string -> System.Security.RightsManagement.UnsignedPublishLicense
Public Sub New (publishLicenseTemplate As String)
Параметры
- publishLicenseTemplate
- String
Шаблон лицензии на публикацию XrML, используемый для создания этой лицензии.
Примеры
В следующем примере показано, как использовать этот конструктор.
WriteStatus(" Reading '" + xrmlFilename + "' permissions.");
try
{
StreamReader sr = File.OpenText(xrmlFile);
xrmlString = sr.ReadToEnd();
}
catch (Exception ex)
{
MessageBox.Show("ERROR: '"+xrmlFilename+"' open failed.\n"+
"Exception: " + ex.Message, "XrML File Error",
MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
WriteStatus(" Building UnsignedPublishLicense");
WriteStatus(" from '" + xrmlFilename + "'.");
UnsignedPublishLicense unsignedLicense =
new UnsignedPublishLicense(xrmlString);
ContentUser author = unsignedLicense.Owner;
WriteStatus(" Reading '" & xrmlFilename & "' permissions.")
Try
Dim sr As StreamReader = File.OpenText(xrmlFile)
xrmlString = sr.ReadToEnd()
Catch ex As Exception
MessageBox.Show("ERROR: '" & xrmlFilename &"' open failed." & vbLf & "Exception: " & ex.Message, "XrML File Error", MessageBoxButton.OK, MessageBoxImage.Error)
Return False
End Try
WriteStatus(" Building UnsignedPublishLicense")
WriteStatus(" from '" & xrmlFilename & "'.")
Dim unsignedLicense As New UnsignedPublishLicense(xrmlString)
Dim author As ContentUser = unsignedLicense.Owner
Комментарии
XrML publishLicenseTemplate
<RANGETIME>
или <INTERVALTIME>
элементы игнорируются при UnsignedPublishLicense создании конструктором UnsignedPublishLicense(String). Чтобы указать эти значения для лицензии на публикацию ContentGrant , необходимо явно задать свойства для ValidFrom и ValidUntil . В следующем примере показано, как явно задать ValidFrom свойства и ValidUntil .
// The XRML template <RANGETIME> and <INTERVALTIME> elements are
// ignored by the UnsignedPublishLicense(xrmlString) constructor.
// To specify these values for the license, the ContentGrant
// ValidFrom and ValidUntil properties must be explicitly set.
// The following code sample demonstrates how to set the
// ContentGrant properties for ValidFrom and ValidUntil.
// Create a copy of the original XRML template ContentGrants
// set by the UnsignedPublishLicense(xrmlString) constructor.
ICollection<ContentGrant> tmpGrants = new List<ContentGrant>();
foreach (ContentGrant grant in unsignedLicense.Grants)
tmpGrants.Add(grant);
// Erase all original UnsignedPublishLicense ContentGrants.
unsignedLicense.Grants.Clear();
// Add each original grant back to the UnsignedPublishLicense
// with appropriate ValidFrom and ValidUntil date/time values.
foreach (ContentGrant grant in tmpGrants)
{
unsignedLicense.Grants.Add( new ContentGrant(
grant.User, grant.Right,
DateTime.MinValue, // set ValidFrom as appropriate
DateTime.MaxValue)); // set ValidUntil as appropriate
}
' The XRML template <RANGETIME> and <INTERVALTIME> elements are
' ignored by the UnsignedPublishLicense(xrmlString) constructor.
' To specify these values for the license, the ContentGrant
' ValidFrom and ValidUntil properties must be explicitly set.
' The following code sample demonstrates how to set the
' ContentGrant properties for ValidFrom and ValidUntil.
' Create a copy of the original XRML template ContentGrants
' set by the UnsignedPublishLicense(xrmlString) constructor.
Dim tmpGrants As ICollection(Of ContentGrant) = New List(Of ContentGrant)()
For Each grant As ContentGrant In unsignedLicense.Grants
tmpGrants.Add(grant)
Next grant
' Erase all original UnsignedPublishLicense ContentGrants.
unsignedLicense.Grants.Clear()
' Add each original grant back to the UnsignedPublishLicense
' with appropriate ValidFrom and ValidUntil date/time values.
For Each grant As ContentGrant In tmpGrants
unsignedLicense.Grants.Add(New ContentGrant(grant.User, grant.Right, Date.MinValue, Date.MaxValue)) ' set ValidUntil as appropriate - set ValidFrom as appropriate
Next grant