UnsignedPublishLicense Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inizializza una nuova istanza della classe UnsignedPublishLicense.
Overload
UnsignedPublishLicense() |
Inizializza una nuova istanza della classe UnsignedPublishLicense. |
UnsignedPublishLicense(String) |
Inizializza una nuova istanza della UnsignedPublishLicense classe da un modello di pubblicazione-licenza XrML specificato. |
UnsignedPublishLicense()
Inizializza una nuova istanza della classe UnsignedPublishLicense.
public:
UnsignedPublishLicense();
public UnsignedPublishLicense ();
Public Sub New ()
Commenti
UnsignedPublishLicense crea una licenza pubblica vuota e senza segno.
Si applica a
UnsignedPublishLicense(String)
Inizializza una nuova istanza della UnsignedPublishLicense classe da un modello di pubblicazione-licenza XrML specificato.
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)
Parametri
- publishLicenseTemplate
- String
Modello di pubblicazione della licenza di pubblicazione di Extensible Rights Markup Language (XrML) da usare per creare questa licenza.
Esempio
Nell'esempio seguente viene illustrato come utilizzare questo costruttore.
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
Commenti
Gli publishLicenseTemplate
elementi o <INTERVALTIME>
XrML <RANGETIME>
vengono ignorati quando UnsignedPublishLicense viene creato dal UnsignedPublishLicensecostruttore (String). Per specificare questi valori per la licenza di pubblicazione, le ContentGrant proprietà per ValidFrom e ValidUntil devono essere impostate in modo esplicito. Nell'esempio seguente viene illustrato come impostare in modo esplicito le ValidFrom proprietà e 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