My name is Tom Owsiak.
I'm the author of "Beginning C# Hands-On-The Core Language" from Packt Publishing. Let's take a look at every this course has to offer.
I have an updated version of a similar course with Visual Studio 2017.
My name is Tom Owsiak.
I'm the author of "Beginning C# Hands-On-The Core Language" from Packt Publishing. Let's take a look at every this course has to offer.
I have an updated version of a similar course with Visual Studio 2017.
Please search "Learn C# with Visual Studio 2017 and Console Programs"
Update 8/24/2020: Added several new lessons on the bottom on concepts related to try/catch/finally and using blocks with C# 8.0.
This comprehensive C# course is designed for beginner programmers, as you won't be rushing through code. It focuses on the C# language rather than the graphical aspects of Windows programming. The focus at first is on simple Console applications. This course works with Visual Studio 2013, or Visual Studio 2015.
You'll learn in a detailed and deliberate way so you can set a foundation and move from basic to more advanced concepts easily.
In addition to learning C#, you'll also cover the Microsoft Visual Studio programming environment, which will serve as the perfect complement to your newfound C# skills.
Learn C#, Visual Studio, and Object Oriented Programming
Start Using the C# Programming Language to Work with Code and Data Through Simple Console Applications
Understand the Microsoft Visual Studio Environment as It Relates to C#
Apply the Fundamentals of Object Oriented Programming to Data
Enhance Your Programming Skills with a Foundation in C#
Throughout this course, you'll learn the core concepts of C#, which can then be applied directly to other popular programming languages, including C++, C, Java, and JavaScript.
Contents and Overview
You'll start this course by learning the fundamentals of C# and Visual Studio, including configuring the layout, defining variables, interacting with users, and understanding data types, data conversions, and constants.
To work with code in a more advanced way, you'll tackle how to check simple conditions using if/else blocks, as well as how to use loops to do things like repeat blocks of code to work more efficiently.
After covering various operators to evaluate and assign control structures, you'll learn how to use arrays to store collections of data.
Moving on to Object Oriented Programming, you'll create objects that contain both data and functions to make your job even easier.
By the end of this course, you'll have a solid understanding of the most important aspects of C#, Visual Studio, and Object Oriented Programming.
You'll be able to use these new skills to advance your career as a programmer, as well as become a C# developer.
Note: Promo template licensed from This one has lots of exercises.
Big Idea: C# is powerful, and very popular in the marketplace. Learn it, and put in on your resume.To learn it properly, and truly, you must invest time and energy, but at the end, lies a great and valuable skill that can take you very far in life.
Lesson Objectives:
1. C# is a powerful programming language
2. There are many jobs in this language
3. It's great for tinkerers
4. The lessons in this course use Visual Studio 2013 For Desktop
Big Idea: It's your work space, so you can be as productive as want, and make Visual Studio your own.
Lesson Objectives:
1. Control the layout of the panels in Visual Studio
2. Change the font of each of these windows:
a. Text Editor
b. Statement Completion
c. Editor Tooltip
d. Locals Window
Lesson Resources:
1. Link to additional detail on changing fonts
Big Idea: Printing a single line of text
Learning Results:
1) Create and run a simple console application
2) Learn how to comment code
3) Become familiar with the concept of a namespace, class and method
4) There is also a useful image attached showing how to move blocks of code right and left
Assignments:
1) Close Visual Studio, and repeat the procedure you see in the video. Be sure you get all the way to the point of having the console window running.
2) Create a program that prints two sentences.
Big Idea: Use comments to annotate code so it's more meaningful, especially after a period of time
Learning Results:
1) Understand purpose of multiline comments
2) Learn how to define a block of code
3) Learn how to nest blocks of code
Big Idea: People expect applications to produce professional results
Learning Results:
1) Learn how to format a string
2) Review concept of place holder that is filled at run time with a variable value
3) Learn how to apply the currency format
4) Learn how to apply the percent format
Big Idea: Things change, so variables are needed to represent those changing quantities.
Learning Results:
1) Understand that a variable is an identifier that represents changing or unknown quantities
2) Learn about the double data type as good for representing measured values
3) Learn how to view summary information on a variable in the locals window
Big Idea: There are many different data types that can be used describe objects
Lesson Objectives:
1. Describing an object with different data types
2. Understanding that C# is strongly typed
3. Data types shown are boolean, decimal and string
Lesson Resources:
1. Code to copy and paste
2. Data types in C#
Big Idea: Variables can be combined through basic arithmetic
Lesson Objectives:
1. Learn how to add, subtract and divide variables
2. Learn how to use the var keyword
Lesson Resources:
1. Commented code to copy and paste
Big Idea: A single mathematical symbol can result in two different values
Lesson Objectives:
1. Understanding the result of dividing two doubles
2. Understanding the result of dividing two integers
Lesson Resources:
1. Commented code to copy and paste
Big Idea: The slash symbol and percent symbol produce two conceptually different results
Lesson Objectives:
1. Understand the difference between % and / when dividing two integers
Lesson Resources:
1. Commented code to copy and paste
Big Idea: Programs are machines. They accept input, operate on the input, and produce output.
Lesson Objectives:
1. Reading string input
2. Converting to numerical form
3. Doing a useful calculation and producing output
Lesson Resources:
1. Commented code to copy and paste
Big Idea: Data loss can occur when converting between types, so design to ensure this does not happen.
Lesson Objectives:
1. Understand data casting
2. Understand the character data type
Lesson Resources:
1. Commented code to copy and paste
Big Idea: If something needs a meaningful name, but does not change, use a constant to represent this quantity. For example, the number of months in a year.
Learning Results:
1) Understand the purpose of the keyword const
2. Important Note: trying to change a constant after its set gives an error
Big Idea: If blocks run on logical conditions, which can take many different forms
Lesson Objectives:
1. Use if to check a condition
2. Use the == operator
3. Use the Contains method
Lesson Resources:
1. Commented code to copy and paste
Big Idea: Making decisions results from having options. Programs should be flexible, and respond smartly based on user choice.
Lesson Objectives:
1. Creating and using if/else blocks
2. Understanding how such blocks execute
Lesson Resources:
1. Commented code to copy and paste
Assignments:
1) Create an application that accepts two inputs, compares them, and returns them sorted from lower to higher. For example, if a user inputs 4,3, the application should return 3,4.
Big Idea: There a few ways of adding growing a variable value
Lesson Objectives:
1. Understand how to use ++
2. Understand how to use +=
Big Idea: Computers excel especially at performing routine tasks much faster than humans. Loops fit into this scheme.
Lesson Objectives:
1. Create a counter variable
2. Create and run a while loop
3. Run loop step by step to be sureit's 100% clear
Lesson Resources:
1. Commented code to copy and paste
2. More complex example
on the page where the code is stored
Big Idea: In real life, there are multiple conditions. In code, these can be handled with multiple if/else blocks.
Lesson Objectives:
1. Understand how to create if/else blocks
2. Understand why such blocks are needed
3. Understand how such blocks execute
Big Idea: Switch blocks allow us to replace if/else if/else blocks so multiple variable values can be checked
Learning Results:
2) Learn how to code a switch block to examine multiple options
3) Learn how to leave a switch block with the break keyword
4) Use the locals window to observe the values of the variables, and step through the code line by line to understand how the switch statement behaves as the code runs.
Big Idea: For loops allows us to repeat an operation fast
Learning Results:
1) Create a for loop to repeat blocks of code
2) Execute the for loop with the debugger to see how it operates
Big Idea: Foreach loops simplify iteration through collections of items.
Learning Results:
1) Code a foreach loop
2) Understand how a foreach loop runs
3) Stepping through the execution of the foreach loop using the locals window
Big Idea: Do while loops run at least once because the condition that controls them is checked at the bottom of the loop
Lesson Objectives:
1) Code a simple do-while loop
3) Understand that this loop runs at least once
3) Observe the behavior of the loop as the program executes
Additional Resources:
1. More advanced example
Big Idea: A while loop can be used to collect input until a user wants to quit
Learning Results:
1) Learn how to collect input forever
2) Learn how to continue a loop
Big Idea: This operator allows us to refine control over logical decision making.
Learning Results:
1) Understand how to use the && operator to check logical conditions
2) Understand that for this operator, both conditions must be true for the code following the "if" to execute
3) Understand that this operator is considered a "short-circuiting" operator because if one condition fails, the other is not checked
Big Idea: This operator allows us to refine our logical decision making.
Learning Results
1) Learn how to code an "or" statement in a simple financial application
2) Understand that the "or" statement in C# is inclusive, so it evaluates to true when one, or the other, or both conditions are true
Big Idea: These operators allow us to rewrite expressions in a very compact way
Learning Results:
1) Learn how to increment and decrement a variable using += and -=
2) Learn how to user various compound operators to divide and multiply
3) Learn how to use the post fix and prefix operator
Big Idea: Truth values of expressions are controllable.
Learning Results:
1) Understand how to reverse the truth value of boolean variables
2) Understand how to run if blocks using boolean variables
Big Idea: Replace if/else blocks with this operator
Learning Results:
1. Learn how to replace if/else blocks with the ternary operator
Additional Resources:
1. Advanced example
Big Idea: It's possible to combine logical operators in a variety of ways to produce more refined logic
Learning Results:
1. Understand how to combine the logical "and" and or operators
2. Understand how to build a simple program that can filter a list of characters
Big Idea: Functions allow us to break up software into discrete pieces that perform specific tasks well.
Learning Results
1) Understand how to create function
2) Learn the meaning of static, void and how to create a function name
3) Understand how to call a function
4) Attached are two PDF's with flow diagrams that describe in much more detail how methods work
Big Idea: Methods can accept and return values
Learning Results:
1. Learn how to create a method that can accept and return values
2. Understand the concept of a return data type and a parameter data type
Big Idea: Arrays allow us to store information in sequences, and gives us a compact syntax for manipulation this data.
Learning Results
1) Understand the concept of an array
2) Learn how to declare, and initialize arrays
3) Understand how to read arrays
4) Understand how to assign values to arrays
5) Learn how to work with arrays in a practical context
6) Attached is a PDF showing how to read lists into arrays
Big Idea: For loops work well with arrays because they give us an index we can use to manipulate arrays
Learning Results:
1) Create an array
2) Fill array with for loop
3) Display array values with foreach loop
Big Idea: Reference and simple types like behave differently when copied
Learning Results:
1. Understand how to copy by reference
2. Understand how to copy by value
Big Idea: The ref keyword allows us to modify value type variables in multiple places
Learning Results:
1) Learn how to force C# to pass basic types like integer by reference
2) Learn how to use the "ref" keyword in both function calls and function headers
3) Learn how to swap values
Big Idea: This keyword allows us to return multiple values from functions.
Learning Results:
1) Learn how to use the out keyword in function calls
2) Understand how to modify parameters with out keyword
3) Understand that this keyword allows returning multiple values from a function
4) Learn that this keyword does not require us to initialize variables with values
Big Idea: Two-dimensional arrays allow us to hold information, which is often times related. For example, a row can hold purchases for a person. Another row can hold purchases for another person and so on.
Learning Results:
1) Understand that a two-dimensional array is a table
2) Understand how to address each cell using (i,j), where i is the row index, and j is the column index
3) Understand the difference between the index and the actual value stored at the given index
4) There is also a PDF showing an approach to thinking like a programmer
Big Idea: Arrays are passed by reference. This means that the names are passed, but the data is not.
Learning Results:
1) Learn how to pass an array as an argument into a function
2) Learn how to go over the entries inside an array using a foreach loop
3) Understand that arrays are reference types, so no data is copied, but references are passed
4) Understand how to use an out parameter to return a value from a function
Big Idea: This keyword allows us to make methods flexible
Learning Results:
1) Learn how to use the params keyword
2) Learn how to make use of the params keyword in a method header
Big Idea: TryParse is a powerful method that allows creating more stable programs
Big Idea: Classes allow us to group functionality into a single unit. We use them because the world around us can be divided into different types of objects. For example, the Console class we've used many times.
Learning Results:
1) Create a new class using the correct syntax
2) Write a constructor for the class
3) Declare an instance of the class, and initialize the instance
4) Understand that the default value for objects is null
5) Understand the concept of a reference as a name that refers to memory location
Big Idea: Methods make classes more powerful by adding various behaviors.
Learning Results:
1) Create a class with a constructor
2) Create a method that expresses the action of speaking
3) Create an instance of the person class and call the Speak method on the instance
Big Idea: Properties give us controlled access to fields
1. Create a class
2. Create a method
3. Create and use a property
Big Idea: Fields that contains information about entire classes are static and are reachable through static properties
Big Idea: Concepts like Math don't' have instance variables, but they do have lots of concrete actions expressible as methods
Big Idea: Use classes to build logical relationships, and save code. Place common data and behaviors in the parent class so they don't have to be recreated.
Learning Results:
1) Create a namespace
2) Create three classes within the namespace
3) Create a base class with a constructor
4) Create a child class, and derive from the base class
5) Understand the child class uses the constructor of the base class
6) Run the code, and observe the behavior in the locals window, and on the call stack
7) Attached is an image with more detail on inheritance
Big Idea: If a function can provide some default behavior that makes sense in some cases, but might not fit perfectly in every case, make it virtual so the implementation can be refined in child classes.
Learning Results:
1) Understand how to create a virtual function
2) Understand the reason for having virtual functions
3) Learn how to override virtual functions
4) There is an attached PDF with another example if you have trouble with the video
Big Idea: The dynamic keyword allows operations to be resolved at run time, so a single piece of code can work with multiple data types.
Learning Results:
1) Learn how to create dynamic functions
2) Understand how to pass values into dynamic functions
3) Understand how a single function working with the dynamic type can accept several different types of data
Big Idea: The dynamic keyword adds flexibility to code. The var keyword is just a way for programmers to have to remember less.
Learning Results
1) Understand how var and dynamic types work
2) Understand how a dynamic variable can change values and types as a program runs
3) Understand how var is resolved to a specific type even in the editor window
Big Idea: Abstract classes represent abstract concepts. Abstract functions don't provide default code of any kind because it would not make sense to do so.
Learning Results:
1) Create an abstract class
2) Understand the purpose of abstract classes
3) Understand that methods declared as abstract must be overridden in child classes
4) Run the code and observe the behavior of the code in memory
Big Idea: Generic lists(and generics in general) are powerful because they allow us to operate on a great variety of data types easily.
Learning Results:
1) Create a student class
2) Create a function that operates on array instance variables
3) Use a list of integers to collect information
5) Run the code and see it behave live in memory
Big Idea: Polymorphism allows us to use objects in a flexible way.
Learning Results:
1) Understand the concept of polymorphism
2) Understand the meaning of the word polymorphism
3) Learn how to implement polymorphism in code
Big Idea: Learn how to use your own types as parameter types in functions
Learning Results:
1) Create a custom type
2) Create a class that uses the custom type, but does not inherit from it
3) Create a function that uses the custom type as an array parameter
4) Review the concept of an array initializer
Challenge:
1) The current method will show a count of 7, for example, if called twice, with two arrays of 3 and 4, for example. But it overrides the first array. Can you find a way to fix it?
Big Idea: Operator overloading allows us to assign new meanings to operators. For example, these can be used to create custom defitions of the equality operator.
Learning Results:
1) Learn the meaning of operator overloading
2) Learn when operator overloading is appropriate
3) Learn how to confirm that operator overloading is actually working as expected
4) Overloading the + operator to form the sum of vectors
5) Easy example available also
Big Idea: Delegates functions as function wrappers. They are used heavily in event driven programming in graphical user interface code.
Learning Results:
1) Learn how to declare a delegate
2) Learn what the purpose is of a delegate
3) Learn how a delegate can represent many different functions to write less code
Big Idea: Actions are simple delegates. You can chain them to call multiple functions easily.
Learning Results
1) Understand how to create an action
2) Understand the class hierarchy that leads to actions
3) Understand that actions encapsulate functions with one parameter
4) Learn how to use the list version of ForEach(Action..) construct
Big Idea: Events occur, and we write code, called "event handling code" to respond to these events.For example, button clicks.
Learning Results:
1) Learn how to declare an event
2) Learn how to chain functions up to an event through delegates
3) Understand the purpose of an event
Big Idea: Interfaces are contracts. Think of "can be used as" when thinking of interfaces. That's why many of them have names like "IEnumerable".
Learning Results:
1) Interfaces allow us to group objects by behaviors
2) Understand the fundamental difference between an interface, and a class
3) Understand that classes have a "IS A" type of relationship to their child classes
4) Understand that a class that implements an interface can DO, or CAN BE USED AS that interface type
5) It's very important to watch the second, attached example.
Big Idea: Generic Interfaces allow a single interfaces to operate equally well with many different data types.
Learning Results
1) Understand how to view the code that defines a generic interface
2) Learn how to implement the method defined in the interface
3) Learn how to call the the method defined in the function
4) There is a supplementary video attached that illustrates generic interfaces more convincingly
5) In this example, we could have done without generic interfaces also
Big Idea: Access modifiers allow us to control code within a file, and across multiple files.
Learning Results:
1) Learn how to use the public keyword
2) Learn how to use the private keyword
3) Learn how to use the protected keyword
4) Learn how to spread a program across multiple files
Bid Idea: There are many functions for working with strings. These are among some of the most useful for cleaning up text.
Learning Results:
1) Learn how to apply six different string functions
2) Learn how to make a messy string look much neater
3) Attached is an image showing how to combine if/else blocks with strings
Note: Be sure to watch the video on adding references first.
Big Idea: Graphical user interfaces rely heavily on controls like buttons, and events like the Click event of button controls. We can construct graphical applications directly from console windows in a very careful, step by step fashion for maximum comprehension.
Learning Results
1) Understand how to create a couple class files
2) Understand how to split a single class over multiple files
3) Understand how to use such a class
4) Understand how to launch and use Windows Forms directly from console applications
5) Understand how to design a simple user interface in code without a visual designer
Big Idea: Try/Catch Blocks allow us to have complete control over handling exceptional, but predictable errors in our applications.
Learning Results:
1) Understand the purpose of error checking
2) Understand the purpose of a try block
3) Understand the purpose of a catch block
4) Understand the purpose of a finally block
5) Use the locals window, and the call stack to observe the behavior of the code in memory
6) Construct a user interface, and run a foreach loop on the controls collection
Big Idea: Multiple catch blocks allow us to handle multiple predictable, but undesirable conditions in code. The messages also carry human friendly text.
Learning Outcomes:
1) Learn how to generate multiple kinds of exceptions
2) Learn how to catch multiple kinds of exceptions
3) Learn why exception objects are superior to code that does not use them
Assignments:
1) Extend the application to include the other operations of subtraction and addition, and place the calculator code in a separate class.
Big Idea: Create a class and add a method
Big Idea: Apply string functions to parse input.
Learning Results:
1) Build a user interface
2) Run the code to ensure it work
Assignments:
1) Extend the application to include an override of ToString
2) Add a new label and display the message "(4,5)=(4,5)" if two points are equal.
3) Be sure to position the label so it's visible
Big Idea: Indexers allow us to turn objects into arrays so we can step through them.
Learning Results:
1) Define an indexer in code
2) Understand the purpose of an indexer
3) Code a for loop, and use array notation to access values in the object
4) Code get and set blocks to read and assign values through an indexer
Big Idea: Writing and reading files are at the core of many software packages.
Learning Result:
1) Create a file on the hard drive
2) Save text typed into the console window to the file
3) Close stream to ensure no memory leaks
4) Open a stream to access the file
5) Retrieve text from file
6) Display text to the console window
7) Confirm file has been actually created and saved by searching for it in the file system
Big Idea: Using statements are very important because they ensure that resources are disposed of properly.
Learning Results
1) Understand how to code using blocks
2) Understand the purpose of using blocks
3) Perform basic file writing and reading
4) Understand that using blocks function as replacements for try/catch blocks
Assignments:
1) Wrap a using inside a try/catch, and try writing to a directory that does not exist. What's the message that results?
Big Idea: See how a fairly extensive application is made.
Learning Results
1) Make a Windows Forms user interface
2) Examine the auto generated code
3) Explore properties, and events
4) Write code to writing files
5) Writ code for reading files
6) Learn how the using statement is used to ensure that resources are cleaned up properly
Big Idea: You can customize the execution of your code, and code editor window with fine control.
Learning Results:
1) Understand the concept of a conditional function
2) Understand the concept of release and debug mode for software
3) Understand how to turn on debug and release modes in Visual Studio
4) Learn how to define a region that can be collapsed and expanded
Assignments:
1) Figure out how to pass arguments into the body of Main
Big Idea: Nullable types allow us to treat basic types, including arrays, as though they can take the value "null". This is useful in database applications, where information might not be known, and the value "null" is common.
Learning Results:
1) Learn how to do declare nullable types
2) Learn how to use nullable types
3) Learn what the purpose is of nullable types
4) Learn how to path a path parameter
5) Learn how to use named, nullable parameters
Assignments:
1) Extend the code to add a function called RecoverAuthorFromDisk(string path)
2) Be sure to use a "using" block to create, use and destroy resources properly
Big Idea: Dynamic link libraries allow us to store and use external features. Most software packages rely on DLL's very heavily. You can see this when you install software.
Learning Results:
1) Create a class library
2) Create a new console app
3) Add a reference to the DLL
4) Reference the namespace
5) Use functions from the DLL
Assignments:
1) Create a dll that contains a function for summing, and for finding averages. Make it one function that accepts an array of doubles, and returns the average, and the sum.Use the out keyword.
Big Idea: There are many functions for learning more about the directory structure of a computer.
Learning Results
1) Learn how to get all the files in a directory
2) Learn how to all the folders in a directory
3) Learn how to list them all using a foreach loop
Assignments:
1) Create a program like the one in the video, but allow the user to retrieve only those files that match a specific condition.
2) Also, be sure that the user can enter the path to a specific folder.
2) Extend the application from steps 1) and 2) above to include a try/catch in case a folder can't be found.
Big Idea: It's possible to nest namespaces. This is very common in the .NET framework.
Learning Results:
1) Understand how to create a dll with multiple namespaces
2) Understand how to call these namespaces in client code
3) Understand how to code a fully qualified name
4) Understand how to use the "using" block to avoid having to type long names
5) Understand how to use the features of Visual Studio to help resolve function calls correctly
Assignments:
1) Does removing the access modifier "public" from the classes in the lessons have an impact on the code?
2) Rewrite the code in the lesson so it uses non static methods.
Big Idea: You can build a working web browser in a few minutes.
Learning Results:
1) Understand how to use the split control
2) Learn how to use the web browser control
3) Learn how to write some basic code to navigate through pages
Big Idea: Generic classes allow us to write a single piece of code, and have that code operate equally well on a great variety of data types. This is the power of generics.
Learning Results
1) Understand how to code a generic class
2) Understand how the purpose of a generic class
3) Understand how to use a generic class
4) Understand how T is replaced with a specific type at run time
Big Idea: Generic lists are powerful, and come with a rich set of functionality to help us save time.
Learning Results
1) Understand the concept of a generic list
2) Understand that generic lists are parametrized, which means that they can store different data types
3) Understand that there is a great variety of built in functions that can be used with generic lists
4) Learn how to use ForEach on each list item
Big Idea: Combine custom types, flexible generic lists, and file saving to produce an application.
Learning Results
1) Understand the concept of a generic to hold custom data types
2) Understand that generic lists are parametrized, which means that they can store different data types
3) Learn how to check for existing files
4) Learn how to append to existing files
Big Idea: Dictionaries allow us to store key/value pairs. These are used in saving and passing information.
Learning Results
1) Understand that the Dictionary class as shown here is generic
2) Understand the concept of a key-value pair
3) Understand how to view the key value pairs as a program runs
4) Understand how to save a dictionary to disk
5) Learn how to launch another program from within C# code
Big Idea: Lambdas are used heavily in modern C#. They go so far as to allow us to pass entire blocks of code as function arguments.
Learning Results
1) Learn the general concept of a Lambda expression
2) Learn how lambdas can be used to make delegates
3) Learn how lambda expressions are written
4) Learn how lambda statements are written
Big Idea: Funcs are delegates. They allow us to write functions compactly.
Learning Results
1) Understand how to use the Func keyword
2) Understand how to use a lambda expression with Func
3) Understand that Func creates a function wrapper
Big Idea: Microsoft SQL Server is a powerful database management system. This is an essential tool for any developer to know.
Learning Resources
1) Understand where to get SQL Server Express
2) Understand how to decided whether your system is 32 or 64 bit
3) Understand how to connect SQL Server to Visual Studio
4) Understand how to create a very simple database with a simple table
5) Be sure to say yes to integrated security during the installation process
6) Learn about the master data file (mdf), also called primary data file
Big Idea: Virtually all modern applications are database connected.
Learning Results
1) Write code for connecting to databases
2) Write code with the "using" block to ensure the resources involved in connecting to a database are cleaned up properly
3) Write code with the try/catch construct in place to ensure that any exceptions are caught
4) Take a look at the services available in Windows
5) Learn how to stop and start SQL Server from the services window
6) Learn how to get the connection string so it's perfect every time
7) Learn how to simulate a possible connection failure
8) Attached is a video with more detail on creating, altering and dropping stored procedures
Big Idea: Linq and generic lists allow you to collect a variety of data, and then search through it directly in your code.
Learning Results
1) Understand how to collect doubles from the user using a generic list
2) Understand how to write a simple LINQ query to get values out of a list
3) Understand how to display the results using a foreach
4) Learn that behind the scenes, the result of a Linq search is still an indexed quantity
Big Idea: Embedding lambda expressions in Linq produces expressive and powerful code.
Learning Results
1) Understand how to write lambda expressions
2) Understand how to embed lambda expressions in Linq queries
3) Understand how to use IEnumerable to create a list using Linq and Lambdas
Big Idea: XML is a powerful language that allows us to create data descriptions. We can access these documents, and query them with Linq.
Learning Results
1) Understand how to create a simple XML file
2) Understand how to connect to the XML file using C#
3) Understand how to retrieve data from the XML file
4) See again the role of IEnumerable in creating a list of objects through which we can step
Big Idea: Learn how Linq can make searching large quantities of text easy.
Learning Results
1) Understand how to read and convert input
2) Understand how to use a Linq query to count the number of times a string occurs
3) Learn how to use the keydown event on text boxes
Note: Amos observed that "word" is fine also in place of word.ToString()
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.