From af036969a53554112dc5c170173d36a5d60c84eb Mon Sep 17 00:00:00 2001 From: Jay Asbury Date: Tue, 6 Dec 2016 23:48:01 -0500 Subject: [PATCH] Add linq Demo sample from msdn Examples https://code.msdn.microsoft.com/VBLinqToObject-74665c0a --- .../LINQ to Objects demo1.sln | 26 + .../VBLinqToObject/Documentation/ReadMe.htm | 2075 +++++++++++++++++ .../ReadMe_files/colorschememapping.xml | 2 + .../Documentation/ReadMe_files/filelist.xml | 8 + .../Documentation/ReadMe_files/image001.png | Bin 0 -> 58568 bytes .../Documentation/ReadMe_files/image002.jpg | Bin 0 -> 38243 bytes .../Documentation/ReadMe_files/themedata.thmx | Bin 0 -> 3106 bytes .../VBLinqToObject/MainModule.vb | 106 + .../My Project/Application.Designer.vb | 13 + .../My Project/Application.myapp | 10 + .../VBLinqToObject/My Project/AssemblyInfo.vb | 35 + .../My Project/Resources.Designer.vb | 63 + .../VBLinqToObject/My Project/Resources.resx | 117 + .../My Project/Settings.Designer.vb | 73 + .../My Project/Settings.settings | 7 + .../VBLinqToObject/Person.vb | 54 + .../VBLinqToObject/VBLinqToObject.vbproj | 160 ++ 17 files changed, 2749 insertions(+) create mode 100644 LINQ to Objects demo1/LINQ to Objects demo1.sln create mode 100644 LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe.htm create mode 100644 LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/colorschememapping.xml create mode 100644 LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/filelist.xml create mode 100644 LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/image001.png create mode 100644 LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/image002.jpg create mode 100644 LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/themedata.thmx create mode 100644 LINQ to Objects demo1/VBLinqToObject/MainModule.vb create mode 100644 LINQ to Objects demo1/VBLinqToObject/My Project/Application.Designer.vb create mode 100644 LINQ to Objects demo1/VBLinqToObject/My Project/Application.myapp create mode 100644 LINQ to Objects demo1/VBLinqToObject/My Project/AssemblyInfo.vb create mode 100644 LINQ to Objects demo1/VBLinqToObject/My Project/Resources.Designer.vb create mode 100644 LINQ to Objects demo1/VBLinqToObject/My Project/Resources.resx create mode 100644 LINQ to Objects demo1/VBLinqToObject/My Project/Settings.Designer.vb create mode 100644 LINQ to Objects demo1/VBLinqToObject/My Project/Settings.settings create mode 100644 LINQ to Objects demo1/VBLinqToObject/Person.vb create mode 100644 LINQ to Objects demo1/VBLinqToObject/VBLinqToObject.vbproj diff --git a/LINQ to Objects demo1/LINQ to Objects demo1.sln b/LINQ to Objects demo1/LINQ to Objects demo1.sln new file mode 100644 index 0000000..4bfe2b6 --- /dev/null +++ b/LINQ to Objects demo1/LINQ to Objects demo1.sln @@ -0,0 +1,26 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "VBLinqToObject", "VBLinqToObject\VBLinqToObject.vbproj", "{1F187E80-A962-4EC9-9886-C59EC100E625}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{66E60E0C-AE02-42BA-9281-2D9DE26F61F3}" + ProjectSection(SolutionItems) = preProject + C:\USERS\VBJAY\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\14.0\EXTENSIONS\T4HCFCDO.0KS\description.html = C:\USERS\VBJAY\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\14.0\EXTENSIONS\T4HCFCDO.0KS\description.html + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {1F187E80-A962-4EC9-9886-C59EC100E625}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1F187E80-A962-4EC9-9886-C59EC100E625}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1F187E80-A962-4EC9-9886-C59EC100E625}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1F187E80-A962-4EC9-9886-C59EC100E625}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe.htm b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe.htm new file mode 100644 index 0000000..1b2891c --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe.htm @@ -0,0 +1,2075 @@ + + + + + + + + + + + + + + + + + + + +
+ +

CONSOLE APPLICATION +(VBLinqToObject)

+ +

Introduction

+ +

The term "LINQ +to Objects" refers to the use of LINQ queries with any IEnumerable +or IEnumerable<T> collection directly, without the +use of an intermediate LINQ provider or API such as LINQ to SQL or LINQ to XML. +You can use LINQ to query any enumerable collections such as List<T>, +Array, or Dictionary<TKey, TValue>. +The collection may be user-defined or may be returned by a .NET Framework API.

+ +

In a basic sense, +LINQ to Objects represents a new approach to collections. In the old way, you +had to write complex foreach loops that specified how +to retrieve data from a collection. In the LINQ approach, you write declarative +code that describes what you want to retrieve.

+ +

In addition, LINQ +queries offer three main advantages over traditional foreach +loops:

+ +

1.They are more concise and readable, especially +when filtering multiple conditions.

+ +

2.They provide powerful filtering, ordering, and +grouping capabilities with a minimum of application code.

+ +

3.They can be ported to other data sources with +little or no modification.

+ +

In general, the +more complex the operation you want to perform on the +data, the more benefit you will realize by using LINQ instead of traditional +iteration techniques.

+ +

This example illustrates how to write Linq +to Object queries using Visual C#. First, it builds a +class named Person. Person inculdes +the ID, Name and Age properties. Then the example creates a list of +Person which will be used as the datasource. In the +example, you will see the basic Linq operations like +select, update, orderby, max, average, etc. 

+ +

Running the Sample

+ +

+ +

Using the Code

+ +

1. Define the Person class that includes the ID, Name, and +Age properties.

+ +
+ +
- VB code snippet -
 
Public Class Person
 
    Public Sub New(ByVal id As Integer, ByVal name As String, ByVal age As Integer)
        Me._id = id
        Me._name = name
        Me._age = age
    End Sub
 
    Private _id As Integer
 
    ''' <summary>
    ''' Person ID
    ''' </summary>
    Public Property PersonID() As Integer
        Get
            Return Me._id
        End Get
        Set(ByVal value As Integer)
            Me._id = value
        End Set
    End Property
 
    Private _name As String
 
    ''' <summary>
    ''' Person name
    ''' </summary>
    Public Property Name() As String
        Get
            Return Me._name
        End Get
        Set(ByVal value As String)
            Me._name = value
        End Set
    End Property
 
    Private _age As Integer
 
    ''' <summary>
    ''' Age that ranges from 1 to 100
    ''' </summary>
    Public Property Age() As Integer
        Get
            Return Me._age
        End Get
        Set(ByVal value As Integer)
            If ((value <= 0) OrElse (value > 100)) Then
                Throw New Exception("Age is out of scope [1,100]")
            End If
            Me._age = value
        End Set
    End Property
 
End Class
 
- end -
+ +
+ +

2. Build a list of Person to be used as the data source.

+ +
+ +
- VB code snippet -
 
        '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        ' Build the Person list that serves as the data source.
        '
        Dim persons As New List(Of Person)
 
        persons.Add(New Person(1, "Alexander David", 20))
        persons.Add(New Person(2, "Aziz Hassouneh", 18))
        persons.Add(New Person(3, "Guido Pica", 20))
        persons.Add(New Person(4, "Chris Preston", 19))
        persons.Add(New Person(5, "Jorgen Rahgek", 20))
        persons.Add(New Person(6, "Todd Rowe", 18))
        persons.Add(New Person(7, "SPeter addow", 22))
        persons.Add(New Person(8, "Markus Breyer", 19))
        persons.Add(New Person(9, "Scott Brown", 20))
 
- end -
+ +
+ +

3. Use Linq to perform the query operation.

+ +
+ +
- VB code snippet -
 
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Query a person in the data source.
    '
    Dim Todd = (From p In persons _
                Where p.Name = "Todd Rowe" _
                Select p).First()
 
    Console.WriteLine("Ereka's age is {0}", Todd.Age)
 
- end -
+ +
+ +

4. Use Linq to perform the Update operation.

+ +
+ +
- VB code snippet -
 
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Perform the Update operation on the person's age.
'
Todd.Age = 21
 
Console.WriteLine("Todd Rowe's age is updated to {0}", (From p In persons _
                                                        Where p.Name = "Todd Rowe" _
                                                        Select p).First().Age)
 
- end -
+ +
+ +

5. Use Linq to perform the Order operation.

+ +
+ +
- VB code snippet -
 
      '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
      ' Sort the data in the data source.
      ' Order the persons by age
      Dim query1 = From p In persons _
                   Order By p.Age _
                   Select p
 
      Console.WriteLine("ID" & vbTab & "Name" & vbTab & vbTab & "Age")
 
      For Each p In query1.ToList()
          Console.WriteLine("{0}" & vbTab & "{1}" & vbTab & vbTab & "{2}", _
                            p.PersonID, p.Name, p.Age)
      Next
 
- end -
+ +
+ +

6. Use Linq +to perform the Max, Min, Average queries.

+ +
+ +
- VB code snippet -
 
      '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
      ' Print the average, max, min age of the persons.
      '
      Dim avgAge As Double = (From p In persons _
                              Select p.Age).Average()
      Console.WriteLine("The average age of the persons is {0:f2}", avgAge)
 
      Dim maxAge As Double = (From p In persons _
                              Select p.Age).Max()
      Console.WriteLine("The maximum age of the persons is {0}", maxAge)
 
      Dim minAge As Double = (From p In persons _
                              Select p.Age).Min()
      Console.WriteLine("The minimum age of the persons is {0}", minAge)
 
- end -
+ +
+ +

7. Use Linq +to count the Person whose age is larger than 20

+ +
+ +
- VB code snippet -
 
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
      ' Count the persons who age is larger than 20.
      '
      Dim query2 = From p In persons _
                   Where p.Age > 20 _
                   Select p
 
      Dim count As Integer = query2.Count()
 
      Console.WriteLine("{0} persons are older than 20:", count)
 
      For i = 0 To count - 1
          Console.WriteLine(query2.ElementAt(i).Name)
      Next
 
- end -
+ +
+ +

More Information

+ +

MSDN: +LINQ to Objects

+ +

http://msdn.microsoft.com/en-us/library/bb397919.aspx

+ +

How +to Query an ArrayList with LINQ

+ +

http://msdn.microsoft.com/en-us/library/bb397937.aspx

+ +
+ + + + diff --git a/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/colorschememapping.xml b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/colorschememapping.xml new file mode 100644 index 0000000..6a0069c --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/colorschememapping.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/filelist.xml b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/filelist.xml new file mode 100644 index 0000000..5791c64 --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/filelist.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/image001.png b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/image001.png new file mode 100644 index 0000000000000000000000000000000000000000..e855998ec93518e74dfa6bf2b6df18f6acf98f5e GIT binary patch literal 58568 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 literal 0 HcmV?d00001 diff --git a/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/image002.jpg b/LINQ to Objects demo1/VBLinqToObject/Documentation/ReadMe_files/image002.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2b109c10043b61cbc97636430fd8ae88bc94baa0 GIT binary patch literal 38243 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 z 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�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 20 + Select p + + Dim count As Integer = query2.Count() + + Console.WriteLine("{0} persons are older than 20:", count) + + For i = 0 To count - 1 + Console.WriteLine(query2.ElementAt(i).Name) + Next + Console.WriteLine("Press any key to quit...") + Console.ReadKey() + + End Sub + +End Module diff --git a/LINQ to Objects demo1/VBLinqToObject/My Project/Application.Designer.vb b/LINQ to Objects demo1/VBLinqToObject/My Project/Application.Designer.vb new file mode 100644 index 0000000..66fb81a --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.239 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/LINQ to Objects demo1/VBLinqToObject/My Project/Application.myapp b/LINQ to Objects demo1/VBLinqToObject/My Project/Application.myapp new file mode 100644 index 0000000..e62f1a5 --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 2 + true + diff --git a/LINQ to Objects demo1/VBLinqToObject/My Project/AssemblyInfo.vb b/LINQ to Objects demo1/VBLinqToObject/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..a7eb0fd --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' General Information about an assembly is controlled through the following +' set of attributes. Change these attribute values to modify the information +' associated with an assembly. + +' Review the values of the assembly attributes + + + + + + + + + + +'The following GUID is for the ID of the typelib if this project is exposed to COM + + +' Version information for an assembly consists of the following four values: +' +' Major Version +' Minor Version +' Build Number +' Revision +' +' You can specify all the values or you can default the Build and Revision Numbers +' by using the '*' as shown below: +' + + + diff --git a/LINQ to Objects demo1/VBLinqToObject/My Project/Resources.Designer.vb b/LINQ to Objects demo1/VBLinqToObject/My Project/Resources.Designer.vb new file mode 100644 index 0000000..fb8e023 --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.239 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + 'This class was auto-generated by the StronglyTypedResourceBuilder + 'class via a tool like ResGen or Visual Studio. + 'To add or remove a member, edit your .ResX file then rerun ResGen + 'with the /str option, or rebuild your VS project. + '''

+ ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Returns the cached ResourceManager instance used by this class. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("VBLinqToObject.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Overrides the current thread's CurrentUICulture property for all + ''' resource lookups using this strongly typed resource class. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/LINQ to Objects demo1/VBLinqToObject/My Project/Resources.resx b/LINQ to Objects demo1/VBLinqToObject/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LINQ to Objects demo1/VBLinqToObject/My Project/Settings.Designer.vb b/LINQ to Objects demo1/VBLinqToObject/My Project/Settings.Designer.vb new file mode 100644 index 0000000..7172e13 --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.239 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "My.Settings Auto-Save Functionality" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.VBLinqToObject.My.MySettings + Get + Return Global.VBLinqToObject.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/LINQ to Objects demo1/VBLinqToObject/My Project/Settings.settings b/LINQ to Objects demo1/VBLinqToObject/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/LINQ to Objects demo1/VBLinqToObject/Person.vb b/LINQ to Objects demo1/VBLinqToObject/Person.vb new file mode 100644 index 0000000..ab7182e --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/Person.vb @@ -0,0 +1,54 @@ +Public Class Person + + Public Sub New(ByVal id As Integer, ByVal name As String, ByVal age As Integer) + Me._id = id + Me._name = name + Me._age = age + End Sub + + Private _id As Integer + + ''' + ''' Person ID + ''' + Public Property PersonID() As Integer + Get + Return Me._id + End Get + Set(ByVal value As Integer) + Me._id = value + End Set + End Property + + Private _name As String + + ''' + ''' Person name + ''' + Public Property Name() As String + Get + Return Me._name + End Get + Set(ByVal value As String) + Me._name = value + End Set + End Property + + Private _age As Integer + + ''' + ''' Age that ranges from 1 to 100 + ''' + Public Property Age() As Integer + Get + Return Me._age + End Get + Set(ByVal value As Integer) + If ((value <= 0) OrElse (value > 100)) Then + Throw New Exception("Age is out of scope [1,100]") + End If + Me._age = value + End Set + End Property + +End Class diff --git a/LINQ to Objects demo1/VBLinqToObject/VBLinqToObject.vbproj b/LINQ to Objects demo1/VBLinqToObject/VBLinqToObject.vbproj new file mode 100644 index 0000000..2ac5bd1 --- /dev/null +++ b/LINQ to Objects demo1/VBLinqToObject/VBLinqToObject.vbproj @@ -0,0 +1,160 @@ + + + + Debug + AnyCPU + 9.0.30729 + 2.0 + {1F187E80-A962-4EC9-9886-C59EC100E625} + Exe + VBLinqToObject.MainModule + VBLinqToObject + VBLinqToObject + 512 + Console + v3.5 + On + Binary + Off + On + + + 3.5 + + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + + + + + true + full + true + true + ..\Debug\ + VBLinqToObject.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355 + AllRules.ruleset + + + pdbonly + false + true + true + ..\Release\ + VBLinqToObject.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355 + AllRules.ruleset + + + + + + + + 3.5 + + + 3.5 + + + 3.5 + + + + + + + + + + + + + + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + + + + + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + true + + + False + Windows Installer 3.1 + true + + + + + \ No newline at end of file