🪟 Windows TippsThe Gemini desktop app is now available for Windows(11.09.2026 um 17:06 Uhr)
⚠️ Malware / Trojaner / VirenWindows 11 just dropped the tool ransomware abused, Microsoft says don’t restore WMIC(10.09.2026 um 20:11 Uhr)
⚠️ Malware / Trojaner / VirenVorsicht: Android-Malware verschlüsselt Ihre Handys und nimmt heimlich Fotos auf(11.09.2026 um 09:35 Uhr)
🕵️ SicherheitslückenMicrosoft geht endlich eines der nervigsten Probleme von Windows 11 an(11.09.2026 um 11:58 Uhr)
💾 IT Security ToolsSysinternals Suite(11.09.2026 um 12:00 Uhr)
🕵️ SicherheitslückenDefender 0-Day ShieldBreak (CVE-2026-69414) nicht sauber gepatcht - BornCity(11.09.2026 um 12:52 Uhr)
🔧 AI Nachrichten Stealing AI Reasoning Traces(08.09.2026 um 12:20 Uhr)
🔧 AI Nachrichten AIs as Modern Genies(08.09.2026 um 19:12 Uhr)
🪟 Windows TippsThe Gemini desktop app is now available for Windows(11.09.2026 um 17:06 Uhr)
⚠️ Malware / Trojaner / VirenWindows 11 just dropped the tool ransomware abused, Microsoft says don’t restore WMIC(10.09.2026 um 20:11 Uhr)
⚠️ Malware / Trojaner / VirenVorsicht: Android-Malware verschlüsselt Ihre Handys und nimmt heimlich Fotos auf(11.09.2026 um 09:35 Uhr)
🕵️ SicherheitslückenMicrosoft geht endlich eines der nervigsten Probleme von Windows 11 an(11.09.2026 um 11:58 Uhr)
💾 IT Security ToolsSysinternals Suite(11.09.2026 um 12:00 Uhr)
🕵️ SicherheitslückenDefender 0-Day ShieldBreak (CVE-2026-69414) nicht sauber gepatcht - BornCity(11.09.2026 um 12:52 Uhr)
🔧 AI Nachrichten Stealing AI Reasoning Traces(08.09.2026 um 12:20 Uhr)
🔧 AI Nachrichten AIs as Modern Genies(08.09.2026 um 19:12 Uhr)

🔧 Programmierung 🕛 vor 1 Monat 4 Min Lesezeit
0

ASP.NET Core mesCode

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht

In this backend development guide, we are setting up a secure RESTful API endpoint using ASP.NET Core Web API.






1. Database Configuration (appsettings.json)



First, configure your SQL Server connection details inside the application environment variables. You can either use Windows Integrated Security or standard SQL Server Authentication.






Option A: Integrated Security (Windows Auth)



"AllowedHosts": "*",

"ConnectionStrings": {

"DefaultConnection": "Server=nameofserver;Database=nameofDB;Integrated Security=True;MultipleActiveResultSets=True;TrustServerCertificate=True;"

}

}






Option B: SQL Server Authentication



"AllowedHosts": "*",

"ConnectionStrings": {

"DefaultConnection": "Server=nameofserver;Database=nameofDB;User Id=your_username;Password=your_password;MultipleActiveResultSets=True;TrustServerCertificate=True;"

}

}




  1. Defining the Service Contract (IService.cs)
    To maintain loose coupling, we define an asynchronous interface containing standard CRUD contracts for our data mutations.



Task<IEnumerable<Student>> GetAllStudentsAsync();

Task<Student> GetStudentByIDAsync(int id);

Task<int> AddStudentAsync(Student student);

Task<int> UpdateStudentAsync(Student student);

Task<int> DeleteStudentAsync(int id);




  1. Core Architecture: Async Stored Procedure Execution (StudentService.cs)
    Here is the underlying service layer that handles optimal stream reading with native asynchronous ADO.NET extensions.



` public class StudentService(IConfiguration config) : IStudentService

{

private string connectionString = config.GetConnectionString("DefaultConnection")!;




CODE
 public async Task<IEnumerable<Student>> GetAllStudentsAsync()
{
try
{
var students = new List<Student>();
using var connection = new SqlConnection(connectionString);
using var command = new SqlCommand("[GetAllStudent]", connection)
{
CommandType = System.Data.CommandType.StoredProcedure,
};
await connection.OpenAsync();
using var reader = await command.ExecuteReaderAsync();
while (reader.Read())
{
Student student = new Student();
{
student.StudentID = reader.GetInt32(reader.GetOrdinal("StudentID"));
student.StudentName = reader.GetString(reader.GetOrdinal("StudentName"));
student.Email = reader.GetString(reader.GetOrdinal("Email"));
student.Phone = reader.GetString(reader.GetOrdinal("Phone"));
student.Gender = reader.GetString(reader.GetOrdinal("Gender"));
student.Address = reader.GetString(reader.GetOrdinal("Address"));
student.Rank = reader.GetDecimal(reader.GetOrdinal("Rank"));
student.DOB = reader.GetDateTime(reader.GetOrdinal("DOB"));
student.CourseID = reader.GetInt32(reader.GetOrdinal("CourseID"));
student.CourseName = reader.GetString(reader.GetOrdinal("CourseName"));

}
;
students.Add(student);
}
return students;
}
catch (Exception ex)
{
throw new Exception($"error retrirving Student: {ex.Message}", ex);
}

}
public async Task<Student> GetStudentByIDAsync(int id)
{
try
{

using var connection = new SqlConnection(connectionString);
using var command = new SqlCommand("[GetstudentbyID]", connection)
{
CommandType = System.Data.CommandType.StoredProcedure
};
command.Parameters.AddWithValue("@StudentID", id);
await connection.OpenAsync();
using var reader = await command.ExecuteReaderAsync();
Student std = new Student();
while (await reader.ReadAsync())
{
Student student = new Student();
{
student.StudentID = reader.GetInt32(reader.GetOrdinal("StudentID"));
student.StudentName = reader.GetString(reader.GetOrdinal("StudentName"));
student.Email = reader.GetString(reader.GetOrdinal("Email"));
student.Phone = reader.GetString(reader.GetOrdinal("Phone"));
student.Gender = reader.GetString(reader.GetOrdinal("Gender"));
student.Address = reader.GetString(reader.GetOrdinal("Address"));
student.Rank = reader.GetDecimal(reader.GetOrdinal("Rank"));
student.DOB = reader.GetDateTime(reader.GetOrdinal("DOB"));
student.CourseID = reader.GetInt32(reader.GetOrdinal("CourseID"));
student.CourseName = reader.GetString(reader.GetOrdinal("CourseName"));
}
;
std = student;
}
return std;
}
catch (Exception ex)
{
throw new Exception($"Error Get student: {ex.Message}", ex);
}
}

public async Task<int> AddStudentAsync(Student student)
{
try
{
using var connection = new SqlConnection(connectionString);
using var command = new SqlCommand("[SaveStudent]", connection)
{
CommandType = System.Data.CommandType.StoredProcedure
};

command.Parameters.AddWithValue("@StudentID", student.StudentID);
command.Parameters.AddWithValue("@StudentName", student.StudentName);
command.Parameters.AddWithValue("@Email", student.Email);
command.Parameters.AddWithValue("@Phone", student.Phone);
command.Parameters.AddWithValue("@Gender", student.Gender);
command.Parameters.AddWithValue("@Address", student.Address);
command.Parameters.AddWithValue("@Rank", student.Rank);
command.Parameters.AddWithValue("@DOB", student.DOB);
command.Parameters.AddWithValue("@CourseID", student.CourseID);
await connection.OpenAsync();
var result = await command.ExecuteNonQueryAsync();
return result;

}
catch (Exception ex)
{
throw new Exception($"Erro Add Student: {ex.Message}", ex);
}

}`





  1. RESTful API Presentation Layer (Controller.cs)
    Expose the endpoints using attributes routing so that front-end modern frameworks can interact safely via HTTP request methods.



` public class StudentController(IStudentService _studentService) : ControllerBase

{

[HttpGet("student")]

public async Task GetAllStudents()

{

try

{

var students = await _studentService.GetAllStudentsAsync();

return Ok(students);




CODE
     }
catch (Exception ex)
{
return BadRequest(ex.Message);
}

}

[HttpGet("{id:int}")]
public async Task<IActionResult> GetStudentbyID(int id)
{
var student = await _studentService.GetStudentByIDAsync(id);
if (student == null)
{
return NotFound($"Student With Id {id} not found");
}
return Ok(student);
}

[HttpPost]
public async Task<IActionResult> AddStudent([FromBody] Student student)
{
var result = await _studentService.AddStudentAsync(student);
return Ok(result);

}
[HttpPut("{id}")]
public async Task<IActionResult> UpdateStudent(int id, [FromBody] Student student)
{
var result = await _studentService.UpdateStudentAsync(student);
return NoContent();
}

[HttpDelete("{id:int}")]

public async Task <IActionResult> DeleteStudent(int id)
{
var result = await _studentService.DeleteStudentAsync(id);
return NoContent();
}`





  1. Dependency Injection & Service Registration (Program.cs)
    Register the custom domain services and open global Cross-Origin Resource Sharing (CORS) rules to enable decoupling integrations.



// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle

builder.Services.AddEndpointsApiExplorer();

builder.Services.AddSwaggerGen();

_builder.Services.AddScoped<IStudentService,StudentService>();_



`// Configure the HTTP request pipeline.

if (app.Environment.IsDevelopment())

{

app.UseSwagger();

app.UseSwaggerUI();

}



app.UseCors(builder =>

builder.AllowAnyOrigin()

.AllowAnyMethod()

.AllowAnyHeader());


`

Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
Stealing AI Reasoning Traces
1 Quelle
AIs as Modern Genies
1 Quelle
Bitcoin: KI-Hacker räumen Millionen ab! Wird Künstliche Intelligenz zum Problem? - ftd.de
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten ASP.NET Core mesCode

Thematisch verwandte Begriffe: ASPNET, Core, mesCode · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...