Snippset

Snippset Feed

...see more

Summary:
This video demonstrates how to generate a TreeView structure using data directly from a SQL Server database in an MVC 4 application. The example uses recursive methods to fetch hierarchical data from a parent-child table (such as a category structure). The TreeView is rendered using a combination of Razor and recursive HTML helpers.

Key Steps:

  • Create a SQL table with ID and ParentID fields.
  • Use Entity Framework to fetch data into a recursive model.
  • Write recursive logic in the controller to build the tree.
  • Use a partial view or helper method to render nested HTML in the view.

Best For:
Developers working with older ASP.NET MVC versions who need to generate TreeViews from database-driven content, particularly with dynamic data structures.

...see more

Summary:
This tutorial walks through building a TreeView in ASP.NET Core using ViewModel binding and JSON serialization. The TreeView is rendered on the client side using a simple recursive HTML structure. The backend constructs the hierarchy from a static or database source and passes it to the view. The data is structured using parent-child relationships, and the final JSON is passed to the view for rendering. No third-party libraries are used, making it a lightweight and transparent solution.

Key Steps:

  • Define a hierarchical ViewModel with recursive child collections.
  • Populate the ViewModel with data (manually or from a database).
  • Serialize the structure into JSON.
  • Render the TreeView in a Razor view using JavaScript.

Best For:
Developers using ASP.NET Core who want a lightweight, client-side rendered TreeView without relying on jQuery plugins or third-party UI components.

...see more

TreeView is a popular UI component used for displaying hierarchical data in a nested, expandable structure. In ASP.NET MVC and ASP.NET Core, creating a TreeView can enhance navigation, represent parent-child relationships (such as categories or folders), and improve user interaction with complex data structures.

This overview introduces how TreeViews are implemented in both ASP.NET MVC 4 and ASP.NET Core, using Razor views and model binding, and how data from a database can be dynamically rendered in a hierarchical format.

...see more

jsTree is a lightweight jQuery plugin that enables the creation of interactive tree views within web applications. It supports themes, drag-and-drop, keyboard navigation, and various data formats including JSON and HTML. Developers can extend it with plugins for checkboxes, search, context menus, and more.

Key features include:

  • JSON and HTML data support
  • Drag-and-drop functionality
  • Highly customizable themes
  • Plugin architecture
  • Accessibility and keyboard support

jsTree is well-suited for projects that still leverage jQuery and need quick integration of hierarchical navigation or selection UIs.

React by Riley
...see more

JavaScript Date objects are always created and manipulated relative to the user’s local timezone, which it gets from the environment.

const date = new Date("2025-05-27T20:03:00Z"); // stored as UTC
console.log(date.toString());
// → "Tue May 27 2025 22:03:00 GMT+0200 (Central European Summer Time)"

To determine the client’s timezone:

Intl.DateTimeFormat().resolvedOptions().timeZone
// → "Europe/Berlin" or similar

This automatic timezone handling is key to understanding how UTC inputs appear offset when viewed or edited on the frontend.

...see more

A thoughtful reflection on life’s most valuable lessons learned over time. These insights emphasize protecting your energy, living authentically, and focusing on what truly matters.

Top 10 Lessons:

  1. Protect your energy—it is your most valuable resource.
  2. Say yes to fewer commitments but invest fully in them.
  3. Self-awareness is the foundation of meaningful growth.
  4. Live your truth without waiting for approval.
  5. Release what no longer supports your development.
  6. Trust actions more than words.
  7. Prioritize inner peace over winning arguments.
  8. Surround yourself with people who inspire and challenge you.
  9. Growth often begins by embracing discomfort.
  10. Celebrate progress instead of chasing perfection.PatrikPatrik
...see more

In many modern workplaces, behaviors once considered red flags are now seen as standard or even admirable. However, these patterns can quietly erode well-being, motivation, and team culture. Recognizing and addressing these habits is the first step toward creating healthier, more sustainable work environments.

Here are 10 commonly normalized but toxic work habits:

  1. Glorifying overwork – Equating long hours with value or commitment.

  2. Skipping breaks or meals – Neglecting basic needs to "get more done."

  3. Always being available – Responding to messages outside working hours.

  4. Never using vacation days – Feeling guilty or fearful of taking time off.

  5. Poor boundaries – Blurring lines between personal and professional life.

  6. Avoiding conflict – Letting problems fester instead of addressing them.

  7. Tolerating micromanagement – Lack of trust stifling creativity and morale.

  8. Confusing busyness with productivity – Valuing being “busy” over meaningful results.

  9. Neglecting mental health – Ignoring stress, anxiety, or burnout signs.

  10. Rewarding toxic behavior – Promoting or praising harmful leadership styles.

Fostering a positive workplace starts by challenging these norms and promoting well-being, balance, and accountability.

React by Riley
...see more

To display datetimes in the user's local timezone while preserving backend UTC storage, you can use JavaScript's built-in timezone offset support:

const utcDate = "2025-05-27T20:03:00Z";
const localDisplay = new Date(utcDate).toLocaleString();
// → "5/27/2025, 10:03 PM" (depending on user's locale)

This gives users a familiar and correctly adjusted view of time. For a consistent format, Intl.DateTimeFormat can be used.

React by Riley
...see more

ASP.NET Core with System.Text.Json handles ISO 8601 UTC strings automatically when binding to DateTime properties. Ensure you're not converting to UTC again if the incoming data already ends with Z.

Best Practices:

 

[JsonPropertyName("created")]
public DateTime Created { get; set; } // Will be parsed as UTC if ends in "Z"

If needed, ensure correct serialization:

private readonly JsonSerializerOptions _jsonOptions = new()
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
Converters = { new UtcDateTimeConverter() }
};

Custom converter (if required):

public class UtcDateTimeConverter : JsonConverter<DateTime>
{
public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
=> DateTime.SpecifyKind(reader.GetDateTime(), DateTimeKind.Utc);
public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options)
=> writer.WriteStringValue(value.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.fffZ"));
}
React by Riley
...see more

When a user selects a datetime in a <input type="datetime-local">, the returned value (e.g., "2025-05-27T22:03") is in local time. To maintain UTC consistency on the backend, this must be converted to UTC.

Implementation:

const handleChange = (e) => {
const local = new Date(e.target.value); // local time
const utc = local.toISOString(); // UTC string for API
setPost({ ...post, created: utc });
};

This ensures accurate time data regardless of the user's timezone.

Add to Set
  • .NET
  • Agile
  • AI
  • ASP.NET Core
  • Azure
  • C#
  • Cloud Computing
  • CSS
  • EF Core
  • HTML
  • JavaScript
  • Microsoft Entra
  • PowerShell
  • Quotes
  • React
  • Security
  • Software Development
  • SQL References
  • Technologies
  • Testing
  • Visual Studio
  • Windows