AllowCustomPaging and VirtualItemCount, 127
ASP.NET 4.5
APIs, 151
async
function, 139
GetBufferedInputStream, 141
GetBufferlessInputStream, 141
HttpHandler, 140
HttpModule, 140
HttpResponse, BeginFlush and EndFlush, 141
implementation, 139
bundling and minification
advantages, 130
App_Start, 131
possibilities, 133
VS2010 users, 131
data controls and model binding
BindItem, 126
HTML encoded databind, 127
validation, 126
enable CDN fallback, 151
HTML5, 130
HttpRequest.Abort, 151
IIS Express, 150
performance
JIT compilation (4.5), 149
memory, 149
precompile, 150
Prefetcher, 150
shared assemblies (ASP.NET 4 & VS11), 148–149
routing changes, 151
validation and XSS
AntiXSS, 136
characters <>, 135
Dorrans, Barry, 136
output unencoded, 133
raw unvalidate data, 135
server controls, 135
unobtrusive validation, 137–139
ValidateRequestMode, 136
web.config, 135
value providers
QueryString values, 128
web forms compilation, 151
WebSockets
API requirements, 142
browsers, 142
HTTP, 141
limitations, 141
ASP.NET MVC 4
async controller actions, 166–167
Azure, 169
EF database migration
App_data directories, 169
class, 167
configuration.cs, 168
MVC controller, 167
mobile development
browser overriding, 164
jQuery.Mobile.MVC, 166
mobile-optimized site, 160–162
project template and jQuery framework, 165–166
sites, 159
project templates
screenshot, 157
Razor enhancements
bundle syntax, 157
null and boolean handling, 156
tilde syntax (~), 156
single page application and recipes, 170
version upgrade
assembly references, 154
methods, 153
NuGet package, 156
ASP.NET. See also Web API
event handlers, 31
smart tasks, code editor, 31–32
Async, ASP.NET 4.5
function, 139
GetBufferedInputStream, 141
GetBufferlessInputStream, 141
HttpHandler, 140
HttpModule, 140
HttpResponse, BeginFlush and EndFlush, 141
implementation, 139
Async and await. See also VB.NET
advantages, 104
applications, 103
awaited method, 106
BCL methods, 106
caller information attributes, 116–118
hand method
asynchronous, 111
Main method, 113
MoveNext method, 113
namespaces, 111
hood, 110
key points, 116
meaning, 104
output, 105
real-world frustration, 103, 121
rules, 106
summarization, 105
trace output, 117
Async controller actions, 166–167
Azure. See Windows Azure
Banks, Richard, 5
Base Class Library (BCL)
streams, 56
System.IO.Compression
assemblies, 50
timeout intervals, expression, 49
UTF-16, 49
BasicHttpBinding, 177
Bundling and minification
advantages, 130
App_Start, 131
possibilities, 133
VS2010 users, 131
Cloud Service
Azure datacenter
dashboard, 241
steps, 237
compute emulator
system tray, 236
emulator, 233
Solution Explorer
HelloCloud, 221
properties window, 235
Common Language Runtime (CLR)
garbage collection
LOH, 79
NGen tool, 79
re-JIT feature, 78
JIT, 78
windows, 321
classes, 97
disadvantages, 95
HandleRequest() method, 97
Logger.cs, 96
RequestHandler, 96
ConcurrentExclusiveSchedulerPair, 73–75
Content Delivery Network (CDN), 220
Cross-Site Scripting (XSS). See XSS (Cross-Site Scripting)
CSS3
comment/uncomment, 34
hacks, 34
style sheets, 34
Data provider
entity framework
entity model designer, 213
overview, 204
performance, 212
table-value functions, 211–212
SqlClient
asynchronous programming, 201–202
features, 204
SqlCredential, 203
streaming, 202
Denny, Mitch, 4
Dorrans, Barry, 136
Entity framework (EF)
App_data directory, 169
class, 167
configuration.cs, 168
entity model designer, 213
MVC controller, 167
overview, 204
performance, 212
stored procedure
browser, 208
database objects, 207
overview, 206
steps, 206
table-value functions, 211–212
Event-handlers
EventExtension class, 295
features, 293
ViewModel class, 295
weak reference, 295
ExportFactory<T>
classes, 91
FakeDatabaseConnection.cs, 91
HandlerNameCreator.cs, 91
Program.cs, 93
RequestHandler.cs, 92
RequestListener.cs, 92
Fakes framework
changes, 47
shims, 46
types, 42
Forster, Brendan, 5
Garbage collection (GC)
LOH, 79
NGen tool, 79
re-JIT feature, 78
Godbold, Steve, 6
HTML5
encoding databind
DataGrid, 127
expressions, 127
file upload control, 130
video and audio, 33
HttpRequest.Abort, 151
Infrastructure as a Service (IaaS), 216
Integrated development environment (IDE). See also Fakes framework
ASP.NET web forms
event handlers, 31
smart tasks, code editor, 31–32
compatibilities, 9
CSS3
comment/uncomment, 34
hacks, 34
style sheets, 34
different testing frameworks, 28–30
HTML5
video and audio, 33
JavaScript
console and DOM explorer, 37–38
improvements, 36
overloaded functions, 40
reference and reference group, 39
performance improvements, 41
publish profiles, 42
quick launch box
options, 11
types, 11
word open, 10
references, 21
remote debugger, 41
search options
error view, 12
expressions, 12
find/replace screen, 12
parallel watch window, 13
Solution Explorer, 13
threads window, 13
toolbox, 13
Solution Explorer
active document, 15
collapse all projects, 14
filter files displayed, 16
open files and pending changes, 14
preview images, 15
rename file, 15
scope, context menu option, 15
SQL Server object window, 27
stand-alone utilities, 41
toolbar, 9
VSUpdate, 41
web developers
IntelliSense options, 27
match tag element, 26
quotation marks, 27
toolbar option, 22
JavaScript
console and DOM explorer, 37–38
improvements, 36
overloaded functions, 40
reference and reference group, 39
Large Object Heap (LOH), 79
LocalDb
add option, 201
database creation, 199
project, 200
SQL Server Object Explorer, 199–200
Mackey, Alex, 6
Managed Extensibility Framework (MEF)
Microsoft.Composition package
action, 102
ContainerConfiguration, 100–101
differences, 100
.NET 4.5
composition scoping enhancements, 90–99
convention-based part registration, 88–90
diagnostic improvements, 99
features, 82
terminology, 82
Microsoft.Composition package
action, 102
ContainerConfiguration, 100–101
differences, 100
Mobile development
browser overriding, 164
DisplayMode
browsers, 164
Internet Explorer 9, 164
features, 166
jQuery.Mobile.MVC, 166
mobile-optimized site
flow layouts and responsive design, 160–162
limitations, 162
project template and jQuery framework, 165–166
sites, 159
Model View View-Model (MVVM), 293
Multi core JIT compilation (4.5), 149
Native Image Generation (NGen) tool, 79
.NET 4.5, 197. See also Windows 8 application
Banks, Richard, 5
composition scoping enhancements
CompositionScopeDefinition, 95–99
summarization, 99
types, 90
convention-based part registration
convention + attributes, 90
end view, 90
RegistrationBuilder, 88
covers, 2
Denny, Mitch, 4
diagnostic improvements, 99
download, 2
features, 82
Forster, Brendan, 5
Godbold, Steve, 6
Mackey, Alex, 6
objectives, 1
open generic types
closed generic types, 86
DummyData, 87
FakeRepository class, 87
IRepository, 85
output window, 88
repositories, 84
overview, 1
progress, 2
subject matter, 2
themes
devices and platforms, 3
NuGet, 3
openness, 4
standards and technologies, 3
Tulloch, William, 7
Visual Studio 2012, 4
NuGet
package manager
test framework, 369
tools menu, 367
update packages, 368
Platform as a Service (PaaS), 216
Portal Class Library (PCL)
frameworks dialog box, 76
project dialog box, 75
project properties page, 76
target, Xbox 360, 77
Xbox 360, 77
Prefetcher (Windows 8 and ASP.NET 4.5), 150
ProfileOptimization and Multicore Just-in-Time (JIT), 78
Razor enhancements
bundle syntax, 157
null and boolean handling, 156
tilde syntax (~), 156
Representational State Transfer (REST), 179–180
Ribbon’s controls
application menu bar, 283
both controls, 283
components, 281
markup snippet, 282
quick access toolbar, 283
ribbon tab, 282
XAML, 282
Rich Internet Application (RIA), 297
Shared assemblies (ASP.NET 4 & VS11), 148–149
Silverlight 5
graphics
3D, 315
animations, 315
history, 297
performance improvements, 318
text improvements
different character, 298
LineStackingStrategy values, 299–300
overflow text controls, 301
OverflowContentTarget, 300–301
printing enhancements, 303
trusted applications
file system access, 317
type-ahead, text-searching facility, 303–304
XAML
debugging experience, 314
markup extensions, 313
relative source binding, 313
Simple Object Access Protocol (SOAP), 180
Single Page Application (SPA), 170
Software as a Service (SaaS), 216
SQL Server object window, 27
SqlClient data provider
asynchronous programming, 201–202
features, 204
SqlCredential, 203
streaming, 202
Stored procedure
browser, 208
database objects, 207
overview, 206
steps, 206
System.IO.Compression
assemblies, 50
ZipArchive class
constructor, 52
individual zip entries and extract files, 53
source directories, 52
ZipFile.CreateFromDirectory(), 53
Tables vs. SQL database, 221
Table-value functions (TVFs), 211–212
Task methods
ConfigureAwait() method, 66
Delay() methods, 61
FromResult<TResult>() methods, 64–65
Task Parallel Library (TPL)
ConcurrentExclusiveSchedulerPair, 73–75
features, 58
SqlClient data provider, 201
task methods
ConfigureAwait() method, 66
Delay(), 61
Task.FromResult<TResult>(), 64–65
TPL Dataflow (TDF)
blocks, 68
Themes, .NET 4.5
devices and platforms, 3
NuGet, 3
openness, 4
standards and technologies, 3
TPL Dataflow (TDF)
ActionBlock
Complete() method, 70
Console.Read() statement, 70
output result, 69
Post() method, 69
process messages, 70
tasks output, 70
blocks, 68
Trusted applications
file system access, 317
Tulloch, William, 7
Universal Datagram Protocol (UDP), 176–177
Validation. See XSS (Cross-Site Scripting)
VB.NET
FunctionNamespaces, 120
namespaces, 120
Versioning workflow
dynamic updation
ModifyWorkflow() method, 279
output, 278
results, 279
features, 270
side-by-side
application output, 274
GetInput, 271
WorkflowIdentity, 275
Virtual machines (VMs), 217, 243–245
VirtualizingPanel features, 289
Visual Studio 2010. See Integrated development environment (IDE)
Visual Studio 2012. See .NET 4.5
Web API. See also WebSockets;Windows Communication Foundation (WCF)
ASP.NET
Chrome browser, 187
controller dialog box, 184
MVC 4 Project dialog box, 182–183
filtering, sorting and paging, 194
HttpClient class, 180
Representational State Transfer, 179–180
right return format
Application_Start method, 190
HttpClient class, 188
MIME text, 188
routing, 192
Simple Object Access Protocol, 180
Web IDE improvements
IntelliSense options, 27
match tag, 26
page inspector
alert message, 26
browser menu, 23
files tab, 23
quotation marks, 27
toolbar option, 22
Web sites
ASP.NET application
.publishsettings file, 228–229
management portal, 225
WordPress
WebSockets
API requirements, 142
browsers, 142
definition, 195
drawbacks, 195
HTTP, 141
limitations, 141
.NET, 197
NetHttpsBinding/NetHttpBinding, 195–197
polling, 195
Windows 8 applications. See also Windows 8 Store apps
AppBar, 327
application-switching panel, 332
charms, 328
classic apps, 320
design principles, 319
fundamentals
application runs, 323
background, running, 324
concepts, 321
history, 321
intallation, Windows Store, 322
interface, 324
Modern UI design guidelines, 321
restricted access, 323
Save button, 324
UI thread, 322
legacy apps, 320
principles, 320
sharing application data, 328–329
Start screen, 325
Windows Store and modern UI, 320
Windows 8 Store apps
controls, 339
data picking
declarations tab, 355
ShareTargetApp, 354
data sharing
DataRequestedEventArgs parameter, 351
OnNavigatedTo method, 351
XAML, 350
life cycle
App.xaml.cs file, 360
application manifest, 365
application steps, 359
background task, 363
overridden methods, 362
RegisterFrame method, 360
RestoreAsync method, 360
SaveAsync method, 361
steps, background task, 363–366
TextBox, 362
SemanticZoom
Grid, 348
modes, 345
StackPanel, 341
types, 332
WrapGrid and ScrollViewer, 340
XAML/C#
assets and common folders, 337
controls, 335
dialog box, 333
even handler, 336
manifest file, 338
properties panel, 334
Windows Azure. See Web sites
Cloud Service
emulator, 233
storage and compute emulators, 236–237
data management
access keys, 248
AddMessage method, 252
CDNs, 220
CloudBlob object, 251
DataContext class, 249
dotnetbook, 219
entity, 218
GetMessage method, 252
NoSQL database, 218
partition keys, 219
persist data, 218
querying data, table storage, 249
slobs vs. blobs, 220
SQL database, 221
table storage, data entities, 248
table storage service, 218–219
tables vs. SQL database, 221
updating and inserting data, 250
Visual Studio, 253
dialog box, 223
download page, 224
execution models
Cloud Services, 217
virtual machines (VMs), 217
web sites, 217
features, 222
messaging
communication, 221
queues, 222
service bus, 222
regular datacenter-cloud offering, 215
SQL Database
Windows Communication Foundation (WCF). See also WebSockets
async-await calls, 171
basicHttpBinding, 177
compression, 178
IntelliSense, 174
REST, 178
SOAP, 178
Universal Datagram Protocol, 176–177
Windows Presentation Foundation (WPF)
data value changes, 292
databinding
binding-static properties, 286–287
DataContext object, 287
retrieve information, 288
dispatcher class, 293
event-handlers
EventExtension class, 295
features, 293
ViewModel class, 295
weak reference, 295
ICollectionViewLiveShaping, 292
non-UI threads
button and list box, 289
code behind, 290
EnableCollectionSynchronization() method, 290
exception, 290
view model, 289
Ribbon’s controls
application menu bar, 283
both controls, 283
components, 281
markup snippet, 282
quick access toolbar, 283
ribbon tab, 282
XAML, 282
synchronous and asynchronous validation
IDataErrorInfo interface, 283–284
XAML markup, 284
VirtualizingPanel, 288
Windows workflow foundation (WF)
activities, 267
ActivityDelegate objects, 264
annotations
add annotation, 262
caption, add, 263
context menu, 262
dock, 263
object, 263
designer search, 262
features, 267
multi-select, 264
pan mode, 264
rehosted designer
shell header items, 265
sequence, 264
validation, 264
versioning workflow
features, 270
workflow development models
state machine workflows, 268
Workflow development models
state machine workflows, 268
XSS (Cross-Site Scripting)
AntiXSS, 136
characters <>, 135
Dorrans, Barry, 136
output unencoded, 133
raw unvalidate data, 135
server controls, 135
unobtrusive validation, 137–139
ValidateRequestMode, 136
web.config, 135