diff --git a/AdventureWorks.EntityLayer/AdventureWorks.EntityLayer.csproj b/AdventureWorks.EntityLayer/AdventureWorks.EntityLayer.csproj
new file mode 100644
index 0000000..125f4c9
--- /dev/null
+++ b/AdventureWorks.EntityLayer/AdventureWorks.EntityLayer.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net9.0
+ enable
+ enable
+
+
+
diff --git a/AdventureWorks.EntityLayer/EntityClasses/User.cs b/AdventureWorks.EntityLayer/EntityClasses/User.cs
new file mode 100644
index 0000000..9956497
--- /dev/null
+++ b/AdventureWorks.EntityLayer/EntityClasses/User.cs
@@ -0,0 +1,44 @@
+namespace AdventureWorks.EntityLayer.EntityClasses
+{
+ public class User
+ {
+ public User()
+ {
+ LoginId = string.Empty;
+ FirstName = string.Empty;
+ LastName = string.Empty;
+ Email = string.Empty;
+ Password = string.Empty;
+ Phone = string.Empty;
+ PhoneType = string.Empty;
+ //IsFullTime = true;
+ //IsEnrolledIn401k = true;
+ //IsEnrolledInFlexTime = true;
+ //IsEnrolledInHealthCare = true;
+ //IsEnrolledInHSA = false;
+ //IsActive = true;
+ //BirthDate = "10-03-1975";
+ StartTime = new TimeSpan(6, 0, 0);
+
+
+ }
+
+ public int UserId { get; set; }
+ public string LoginId { get; set; }
+ public string FirstName { get; set; }
+ public string LastName { get; set; }
+ public string Email { get; set; }
+ public string Password { get; set; }
+ public string Phone { get; set; }
+ public string PhoneType { get; set; }
+ public bool IsFullTime { get; set; }
+ public bool IsEnrolledIn401k { get; set; }
+ public bool IsEnrolledInFlexTime { get; set; }
+ public bool IsEnrolledInHealthCare { get; set; }
+ public bool IsEnrolledInHSA { get; set; }
+ public bool IsActive { get; set; }
+ public DateTime BirthDate { get; set; }
+ public TimeSpan StartTime { get; set; }
+
+ }
+}
diff --git a/AdventureWorks.MAUI.sln b/AdventureWorks.MAUI.sln
index fe35113..589668d 100644
--- a/AdventureWorks.MAUI.sln
+++ b/AdventureWorks.MAUI.sln
@@ -5,6 +5,8 @@ VisualStudioVersion = 17.14.36408.4
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AdventureWorks.MAUI", "AdventureWorks.MAUI\AdventureWorks.MAUI.csproj", "{403BA6B6-E816-4A0A-992D-E54FDCEA7E7D}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AdventureWorks.EntityLayer", "AdventureWorks.EntityLayer\AdventureWorks.EntityLayer.csproj", "{33E62110-0EA1-48B1-B62F-CA856D13B114}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -13,8 +15,13 @@ Global
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{403BA6B6-E816-4A0A-992D-E54FDCEA7E7D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{403BA6B6-E816-4A0A-992D-E54FDCEA7E7D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {403BA6B6-E816-4A0A-992D-E54FDCEA7E7D}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
{403BA6B6-E816-4A0A-992D-E54FDCEA7E7D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{403BA6B6-E816-4A0A-992D-E54FDCEA7E7D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {33E62110-0EA1-48B1-B62F-CA856D13B114}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {33E62110-0EA1-48B1-B62F-CA856D13B114}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {33E62110-0EA1-48B1-B62F-CA856D13B114}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {33E62110-0EA1-48B1-B62F-CA856D13B114}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/AdventureWorks.MAUI/AdventureWorks.MAUI.csproj b/AdventureWorks.MAUI/AdventureWorks.MAUI.csproj
index 215ef3d..e71d398 100644
--- a/AdventureWorks.MAUI/AdventureWorks.MAUI.csproj
+++ b/AdventureWorks.MAUI/AdventureWorks.MAUI.csproj
@@ -64,6 +64,10 @@
+
+
+
+
LoginView.xaml
diff --git a/AdventureWorks.MAUI/App.xaml b/AdventureWorks.MAUI/App.xaml
index 26e5dbc..0ff7012 100644
--- a/AdventureWorks.MAUI/App.xaml
+++ b/AdventureWorks.MAUI/App.xaml
@@ -5,6 +5,11 @@
x:Class="AdventureWorks.MAUI.App">
+
+ Home
+ Mobile
+ Other
+
diff --git a/AdventureWorks.MAUI/Views/UserDetailView.xaml b/AdventureWorks.MAUI/Views/UserDetailView.xaml
index 028bf7d..f667d6c 100644
--- a/AdventureWorks.MAUI/Views/UserDetailView.xaml
+++ b/AdventureWorks.MAUI/Views/UserDetailView.xaml
@@ -4,13 +4,31 @@
x:Class="AdventureWorks.MAUI.Views.UserDetailView"
xmlns:partial="clr-namespace:AdventureWorks.MAUI.ViewsPartial"
xmlns:converters="clr-namespace:AdventureWorks.MAUI.Converters"
+ xmlns:vm="clr-namespace:AdventureWorks.EntityLayer.EntityClasses;assembly=AdventureWorks.EntityLayer"
+ x:DataType="vm:User"
Title="User Information">
+
-
+
+ Text="Login ID" />
-
-
@@ -36,17 +54,17 @@
Text="First Name" />
+ Text="{Binding FirstName}"/>
+ Text="{Binding LastName}"/>
+ Text="{Binding Email}"/>
-
+
-
+
-
+
-
+
+ Grid.Column="1"
+ IsToggled="{Binding IsActive}"/>
-
+
@@ -97,14 +116,14 @@
Grid.Row="8"/>
+ Time="{Binding StartTime}"
+ IsEnabled="{Binding IsFullTime, Converter={StaticResource invertedBoolean}}"/>
@@ -113,18 +132,12 @@
Wrap="Wrap"
Direction="Row">
-
+
-
-
-
- Home
- Mobile
- Other
-
-
-
+
@@ -134,7 +147,7 @@
-
+
diff --git a/AdventureWorks.MAUI/Views/UserDetailView.xaml.cs b/AdventureWorks.MAUI/Views/UserDetailView.xaml.cs
index 664c571..dd8c436 100644
--- a/AdventureWorks.MAUI/Views/UserDetailView.xaml.cs
+++ b/AdventureWorks.MAUI/Views/UserDetailView.xaml.cs
@@ -1,9 +1,19 @@
+using AdventureWorks.EntityLayer.EntityClasses;
+
namespace AdventureWorks.MAUI.Views;
public partial class UserDetailView : ContentPage
{
- public UserDetailView()
- {
- InitializeComponent();
- }
+ public UserDetailView()
+ {
+ InitializeComponent();
+ UserObject = (User)this.Resources["viewModel"];
+ }
+
+ public User UserObject { get; set; }
+
+ private void SaveButton_Clicked(object sender, EventArgs e)
+ {
+ System.Diagnostics.Debugger.Break();
+ }
}
\ No newline at end of file