Last I checked, we don't define classes for all tables, nor could we for ones 
we don't know about. But the idea is that you don't need a RowAsDynamic(). You 
could implement the Row as dynamic. Unless you actually declare the row 
variable as "dynamic", it still functions like today. It's a very easy 
adaptation given how a WiX Row already stores it's data.


Heath Stewart
Software Design Engineer
Visual Studio, Microsoft
http://blogs.msdn.com/heaths

 
From: [email protected]
To: [email protected]
Date: Fri, 26 Sep 2014 00:13:51 +0000
Subject: Re: [WiX-devs] ICE Breaker v0.0.1









I just added the “RowsAs<T>()” to get the rows as a static typed Row. You could 
add “RowsAsDynamic()” (or something like that) to get the DyanmicObject version.
 I still prefer the core toolset using the static types to strongly type the 
*fields*. However, Breakers may hit rows that don’t have a static type so the 
friendly names be helpful.
 

_______________________________________________________________
FireGiant  |  Dedicated support for the WiX toolset  | 
http://www.firegiant.com/

 


From: Heath Stewart [mailto:[email protected]]


Sent: Thursday, September 25, 2014 4:29 PM

To: WiX toolset developer mailing list

Subject: Re: [WiX-devs] ICE Breaker v0.0.1


 

One idea I would like to submit is something I did internally for writing tests 
and other tools, borrowing an idea or two from another project of mine without
 the PowerShell dependency.

 

Both WiX and DTF expose some pretty rich object models, but apart from using 
different index bases all fields are exposed as integers. Even after 15 years I 
don't always remember what column name is what index in a table! So I created 
an abstract Row object
 that implements DynamicObject and provides field names as properties, so that 
you (along with some LINQ goodness) can do stuff like this:

 

var results = from dynamic upgrade in tables["Upgrade"].Rows

              join dynamic property in tables["Property"].Rows on 
upgrade.UpgradeCode equals property.Property

              select upgrade;

foreach (dynamic row in results)

{

    var detect = 0 != (row.Attributes & 0x2);

}



It's pretty straight forward to implement and, by abstracting the details away 
using adapters, you could handle the different in indices and allow Breaker to 
work with WiX and MSI output formats.


Heath Stewart

Software Design Engineer

Visual Studio, Microsoft

http://blogs.msdn.com/heaths




 

> Date: Thu, 25 Sep 2014 11:15:54 -0700

> From: [email protected]

> To: [email protected]

> Subject: Re: [WiX-devs] ICE Breaker v0.0.1

> 

> Adding to my off-the-cuff comment in the meeting today....pipe as in a tool

> to produce smoke

> 

> 

> 

> --

> View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/ICE-Breaker-v0-0-1-tp7596908p7597002.html

> Sent from the wix-devs mailing list archive at Nabble.com.

> 

> ------------------------------------------------------------------------------

> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer

> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports

> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper

> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer

> 
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk

> _______________________________________________

> WiX-devs mailing list

> [email protected]

> https://lists.sourceforge.net/lists/listinfo/wix-devs






------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
WiX-devs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-devs                           
          
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
WiX-devs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-devs

Reply via email to