Struct KeyRegTxn
  
  
  
  
  
  Assembly: cs.temp.dll.dll
  Syntax
  
    [AlgoApiObject("", "", 0)]
[Serializable]
public struct KeyRegTxn : IKeyRegTxn, ITransaction, ITransactionHeader, IEquatable<KeyRegTxn>
   
  Properties
  
  
  
  
  AccountParticipation
  
  
  Declaration
  
    public AccountParticipation AccountParticipation { get; set; }
   
  Property Value
  
  
  
  
  Fee
  Paid by the sender to the FeeSink to prevent denial-of-service. The minimum fee on Algorand is currently 1000 microAlgos.
Declaration
  
    [AlgoApiField("fee")]
public MicroAlgos Fee { get; set; }
   
  Property Value
  
  
  
  
  FirstValidRound
  The first round for when the transaction is valid. If the transaction is sent prior to this round it will be rejected by the network.
Declaration
  
    [AlgoApiField("fv")]
public ulong FirstValidRound { get; set; }
   
  Property Value
  
  
  
  
  GenesisHash
  The hash of the genesis block of the network for which the transaction is valid.
Declaration
  
    [AlgoApiField("gh")]
public GenesisHash GenesisHash { get; set; }
   
  Property Value
  
  
  
  
  GenesisId
  The human-readable string that identifies the network for the transaction. The genesis ID is found in the genesis block.
Declaration
  
    [AlgoApiField("gen")]
public FixedString32Bytes GenesisId { get; set; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | FixedString32Bytes |  | 
    
  
  
  
  
  Group
  The group specifies that the transaction is part of a group and, if so, specifies the hash of the transaction group. See Algorand.Unity.TransactionGroup.
Declaration
  
    [AlgoApiField("grp")]
public TransactionId Group { get; set; }
   
  Property Value
  
  
  
  
  LastValidRound
  The ending round for which the transaction is valid. After this round, the transaction will be rejected by the network.
Declaration
  
    [AlgoApiField("lv")]
public ulong LastValidRound { get; set; }
   
  Property Value
  
  
  
  
  Lease
  A lease enforces mutual exclusion of transactions. If this field is nonzero, then once the transaction is confirmed, it acquires the lease identified by the (Sender, Lease) pair of the transaction until the LastValid round passes. While this transaction possesses the lease, no other transaction specifying this lease can be confirmed. A lease is often used in the context of Algorand Smart Contracts to prevent replay attacks.
Declaration
  
    [AlgoApiField("lx")]
public TransactionId Lease { get; set; }
   
  Property Value
  
  
  
  
  NonParticipation
  All new Algorand accounts are participating by default. This means that they earn rewards. Mark an account nonparticipating by setting this value to true and this account will no longer earn rewards. It is unlikely that you will ever need to do this and exists mainly for economic-related functions on the network.
Declaration
  
    [AlgoApiField("nonpart")]
public Optional<bool> NonParticipation { get; set; }
   
  Property Value
  
  
  
  
  Note
  Any data up to 1000 bytes.
Declaration
  
    [AlgoApiField("note")]
public byte[] Note { get; set; }
   
  Property Value
  
  
  
  
  RekeyTo
  Specifies the authorized address. This address will be used to authorize all future transactions.
Declaration
  
    [AlgoApiField("rekey")]
public Address RekeyTo { get; set; }
   
  Property Value
  
  
  
  
  SelectionParticipationKey
  
  
  Declaration
  
    [AlgoApiField("selkey")]
public VrfPubKey SelectionParticipationKey { get; set; }
   
  Property Value
  
  
  
  
  Sender
  The address of the account that pays the fee and amount.
Declaration
  
    [AlgoApiField("snd")]
public Address Sender { get; set; }
   
  Property Value
  
  
  
  
  TransactionType
  Specifies the type of transaction. This value is automatically generated using any of the developer tools.
Declaration
  
    [AlgoApiField("type")]
public TransactionType TransactionType { get; }
   
  Property Value
  
  
  
  
  VoteFirst
  The first round that the participation key is valid. Not to be confused with the  of the keyreg transaction.
Declaration
  
    [AlgoApiField("votefst")]
public ulong VoteFirst { get; set; }
   
  Property Value
  
  
  
  
  VoteKeyDilution
  This is the dilution for the 2-level participation key.
Declaration
  
    [AlgoApiField("votekd")]
public ulong VoteKeyDilution { get; set; }
   
  Property Value
  
  
  
  
  VoteLast
  The last round that the participation key is valid. Not to be confused with the  of the keyreg transaction.
Declaration
  
    [AlgoApiField("votelst")]
public ulong VoteLast { get; set; }
   
  Property Value
  
  
  
  
  VoteParticipationKey
  The root participation public key.
Declaration
  
    [AlgoApiField("votekey")]
public ParticipationPublicKey VoteParticipationKey { get; set; }
   
  Property Value
  
  Methods
  
  
  
  
  CopyFrom(Transaction)
  Copy relevant fields to this transaction.
Declaration
  
    public void CopyFrom(Transaction transaction)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Transaction | transaction | A raw transaction with all possible transaction fields. | 
    
  
  
  
  
  CopyTo(ref Transaction)
  Copy this transactions fields to a Transaction which contains all possible transaction fields.
Declaration
  
    public void CopyTo(ref Transaction transaction)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Transaction | transaction | A raw transaction with all possible transaction fields. | 
    
  
  
  
  
  Equals(KeyRegTxn)
  
  
  Declaration
  
    public bool Equals(KeyRegTxn other)
   
  Parameters
  
  Returns
  
  Implements