Laden...

Forenbeiträge von Mary81 Ingesamt 87 Beiträge

29.06.2021 - 12:20 Uhr

Danke für die Antworten.

28.06.2021 - 09:20 Uhr

Hallo.

Ich hätte da eine Verständnisfrage. Vielleicht kann mir jemand Helfen!?

Ich habe einen Client (Angular) und eine Rest Api (.net core 5).
Ich möchte hier keine eigene Authentifizierung einbauen wo ich Benutzername und Password selber pflegen muss.

Gedanke war eine Auth. über Google, Facebook, Instagram und Co. anzubieten.

Meine Frage ist: Wie läuft es ab bzw. wie ist es richtig?
Client: Benutzer meldet sich an - z. B. google
-> google auth. läuft und gibt auch einen tokenid zurück mit anderen Daten

Wenn ich aber jetzt meine Rest Api anspreche, dann weiß sie ja noch nichts über die Authentifizierung, d. h. hier muss ich doch wieder den Benutzer authentizieren oder authorizieren? Wieder über google provider?

Ich komme an dieser Stelle nicht weiter... irgw. schnalle ich es nicht 🙁

16.12.2020 - 16:48 Uhr

Wo finde ich den Error Body? Das Projekt habe ich bei IONOS gehostet und ich kann es auch nicht debuggen. Einen Error Log habe ich leider auch nicht. Nur das Debugging vom Browser.

15.12.2020 - 20:30 Uhr

Hallo.

Vielleicht kann mir jemand helfen. Ich entwickele gerade an einer Asp Website und kriege irgw. die Seite nicht ans laufen.
Es gibt einen AccountController der für die Anmeldung zuständig ist.

Wenn ich die Anwendung unter localhost aufrufe, dann funktioniert es. Deploye ich die Seite auf dem Server bekomme ich immer wieder die Fehlermeldung 500.

AccountController



    [ValidateAntiForgeryToken]
    public class AccountController : Controller
    {
        private readonly ILogger<AccountController> _logger;
        private SamContext _context;
        
        public AccountController(ILogger<AccountController> logger, SamContext context) 
        {
            _logger = logger;
            _context = context;
        }
        
        [HttpGet]
        public IActionResult Login()
        {
            return View();
        }
        
        [HttpPost]
        [ValidateAntiForgeryToken]
        public IActionResult LoginPst(string email, string password)
        {
            var check = CheckUser(new LoginViewModel() { email = email, password = password });
            if (check == 1)
            {
                return Redirect("/Home/Index");
            }
            else
            {
                ViewBag.Fehler = "Die E-Mail Adresse oder das Passwort ist falsch.";
                return View("Login");
            }
        }

Login.html


@{
    ViewData["Title"] = "Login";
}

<div class="container-login">
    <br />
    <h1>Anmelden</h1>

    <br />
    <form asp-controller="Account" asp-action="LoginPst" method="post">
        @Html.AntiForgeryToken()

        <div class="form-group">
            <label for="email">E-Mail Adresse</label>
            <input type="text" class="form-control" id="email" name="email" required placeholder="E-Mail Adresse">
        </div>
        <div class="form-group">
            <label for="password">Password</label>
            <input type="password" class="form-control" id="password" name="password" required placeholder="Password">
        </div>

        @if (!String.IsNullOrEmpty(ViewBag.Fehler))
        {
        <br />
        <div class="alert alert-danger" role="alert">
            @ViewBag.Fehler
        </div>
        }
        <br />
        <button type="submit" class="btn btn-primary">Anmelden</button>

    </form>
</div>


Startup.cs


public void ConfigureServices(IServiceCollection services)
        {
            var connectionString = Configuration.GetConnectionString("DbConnectionString");
            services.AddDbContext<SamContext>(options => { options.UseSqlServer(connectionString); });
            
            services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie();
            
// ist das hier wichtig ????? 
            services.AddAntiforgery(opiton => {
                opiton.FormFieldName = "MyAntiForgeryField";
                opiton.HeaderName = "ANTI-TOKEN-HEADERNAME";
            });

            services.AddControllersWithViews();
          
            services.AddDistributedMemoryCache();
            services.AddHttpContextAccessor();
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IAntiforgery antiforgery)
        {
            app.UseHttpsRedirection();
            app.UseStaticFiles();

            app.UseRouting();

            app.UseCookiePolicy();
            app.UseAuthentication();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllerRoute(
                    name: "default",
                    pattern: "{controller=Home}/{action=Index}");
            });
        }

Ich weiß gerade nicht was ich falsch mache. Vielleicht kann mir jemand helfen. Im Internet finde ich vieles was mit ajax aufgerufen wird und wo der header expliziert gesetzt wird. Ich wollte die Aufrufe aber so lassen. Es seiden es macht so keinen sinn die Umleitung der Seiten so zu machen!?

ForgeryToken .net core

28.08.2018 - 08:37 Uhr

Die Idee ist folgende....
Ich habe eine DB in der ich mehrere Tabellen haben die irgw. Werte hat.

In der Web-Anwendung gibt es ein Menü, Z. B Nummern, Listen, Farben etc... (ist jetzt ausgedacht)
klickt man z. B. auf Nummern, werden bestimmte Werte aus den Tabellen geladen.. diese können dann auch ausgedruckt werden...

Dafür habe ich eine ASP.NET MVC .Net Framework angelegt (ist noch nichts entgültig programmiert) ...

Meine Idee war dann, dass ich eine Webseite erstelle mit Wordpress oder Wix und die Anwendung da einbinde...

Ob das so geht ist natürlich die Frage... das weiß ich nicht...

Oder soll ich die Webseite direkt ohne Wordpress und co. bereitstellen... dann müsste ich eine Authentifizierungsmöglichkeit habe... dass nur berechtigte Leute drauf können.

27.08.2018 - 10:56 Uhr

Es ist tatsächlich eine Api die sonst im IIS eigerichtet werden muss also mit z.B. localhost:4444/Home/Index aufruf...

27.08.2018 - 10:00 Uhr

Hallo,

ich hätte da ein Frage an die Runde.

Ich habe ein kleines Tool entwickelt mit asp.net (eine kleine API) ... macht nicht viel... eine kleine Auswertung die Daten stehen in der mdf Datenbank die im Projekt eingebunden ist.

Wenn ich eine WebSeite mit Wix oder Wordpress erstelle.. kann ich meine Api da mit einbinden... weiß das jemand? muss natürlich Password geschützt sein. Am besten pro User.

VG

14.08.2018 - 12:27 Uhr

Vielen Dank.

Ich werde mir das Tutorial auf jeden Fall ansehen...

Das der Einstieg ins Angular schwer sein wird hab ich mir schon gedacht, aber so irgw. auch nicht. Aber dann weiß ich jetzt, dass es normal ist.

14.08.2018 - 09:43 Uhr

Hallo,

ich bin gerade dabei ein kleines Projekt

  1. WebService mit MS-SQL Datenbank
  2. eine Web-Oberfläche (Angular)

umzusetzen.

Ich habe versucht einen ersten Testprojekt anzulegen und erstmal zu prüfen ob das was ich vorhabe auch mit Angular geht (bzw. ob ich damit klar komme).

Ich wollte das packege @angular/material einbinden, bekomme aber irgw. immer einen Fehler.....

Meine Vermutung ist, dass evtl. die Versionen nicht stimmen.... kenne mich aber zuwenig damit aus....

Vielleicht kann mir ja jemand helfen?

app.module.ts


import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { MatNativeDateModule } from '@angular/material';

import { AppComponent } from './app.component';
import { MenuComponent } from './menu/menu.component';

@NgModule({
  declarations: [
    AppComponent,
    MenuComponent
  ],
  imports: [
    FormsModule,
    HttpModule,
    MatNativeDateModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

packege.json


{
  "name": "hello-world-app",
  "version": "0.0.0",
  "license": "MIT",
  "angular-cli": {},
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "test": "ng test",
    "pree2e": "webdriver-manager update --standalone false --gecko false",
    "e2e": "protractor"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "github:angular/animations-builds",
    "@angular/cdk": "github:angular/cdk-builds",
    "@angular/common": "^2.4.10",
    "@angular/compiler": "^2.3.1",
    "@angular/core": "^2.3.1",
    "@angular/forms": "^2.3.1",
    "@angular/http": "^2.4.10",
    "@angular/material": "github:angular/material2-builds",
    "@angular/platform-browser": "^6.1.2",
    "@angular/platform-browser-dynamic": "^2.3.1",
    "@angular/router": "^3.3.1",
    "angular-material-source": "github:angular/material",
    "core-js": "^2.4.1",
    "ng-material-multilevel-menu": "^4.0.1",
    "rxjs": "^5.0.1",
    "ts-helpers": "^1.1.1",
    "zone.js": "^0.7.2"
  },
  "devDependencies": {
    "@angular/compiler-cli": "^2.3.1",
    "@types/jasmine": "2.5.38",
    "@types/node": "^6.0.42",
    "angular-cli": "1.0.0-beta.28.3",
    "codelyzer": "~2.0.0-beta.1",
    "jasmine-core": "2.5.2",
    "jasmine-spec-reporter": "2.5.0",
    "karma": "1.2.0",
    "karma-chrome-launcher": "^2.0.0",
    "karma-cli": "^1.0.1",
    "karma-jasmine": "^1.0.2",
    "karma-remap-istanbul": "^0.2.1",
    "protractor": "~4.0.13",
    "ts-node": "1.2.1",
    "tslint": "^4.3.0",
    "typescript": "~2.0.3"
  }
}

Fehlermeldung


fallbackLoader option has been deprecated - replace with "fallback"
loader option has been deprecated - replace with "use"
fallbackLoader option has been deprecated - replace with "fallback"
loader option has been deprecated - replace with "use"
fallbackLoader option has been deprecated - replace with "fallback"
loader option has been deprecated - replace with "use"
fallbackLoader option has been deprecated - replace with "fallback"
loader option has been deprecated - replace with "use"
\** NG Live Development Server is running on http://localhost:4200. **
Hash: 69049d128ab0d229cd8a
Time: 6585ms
chunk    {0} polyfills.bundle.js, polyfills.bundle.map (polyfills) 234 kB {4} [initial] [rendered]
chunk    {1} main.bundle.js, main.bundle.map (main) 6.13 kB {3} [initial] [rendered]
chunk    {2} styles.bundle.js, styles.bundle.map (styles) 9.71 kB {4} [initial] [rendered]
chunk    {3} vendor.bundle.js, vendor.bundle.map (vendor) 2.56 MB [initial] [rendered]
chunk    {4} inline.bundle.js, inline.bundle.map (inline) 0 bytes [entry] [rendered]

WARNING in ./~/@angular/http/src/backends/xhr_backend.js
206:41-69 "export '__platform_browser_private__' was not found in '@angular/platform-browser'

WARNING in ./~/@angular/platform-browser-dynamic/src/private_import_platform-browser.js
9:49-50 "export '__platform_browser_private__' (imported as '_') was not found in '@angular/platform-browser'

WARNING in ./~/@angular/platform-browser-dynamic/src/private_import_platform-browser.js
10:20-21 "export '__platform_browser_private__' (imported as '_') was not found in '@angular/platform-browser'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
172:4-11 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
173:19-26 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
496:69-86 "export 'uparseCookieValue' was not found in '@angular/common'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
540:17-25 "export 'DOCUMENT' was not found in '@angular/common'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
641:24-38 "export 'InjectionToken' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
675:8-15 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
683:8-15 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
684:8-15 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
686:32-39 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
700:13-20 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
701:12-19 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
703:8-15 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
744:17-24 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
744:33-40 "export 'uglobal' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
802:32-46 "export 'InjectionToken' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1118:20-39 "export 'RendererStyleFlags2' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1119:58-77 "export 'RendererStyleFlags2' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1126:20-39 "export 'RendererStyleFlags2' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1301:28-44 "export 'isPlatformServer' was not found in '@angular/common'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1413:83-94 "export 'PLATFORM_ID' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1471:32-46 "export 'InjectionToken' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1473:24-38 "export 'InjectionToken' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1599:16-24 "export 'uConsole' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1800:23-37 "export 'u_sanitizeHtml' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1805:23-38 "export 'u_sanitizeStyle' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1817:23-36 "export 'u_sanitizeUrl' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1910:15-26 "export 'PLATFORM_ID' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1910:38-58 "export 'uPLATFORM_BROWSER_ID' was not found in '@angular/common'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1938:15-24 "export 'uAPP_ROOT' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1944:35-46 "export 'PLATFORM_ID' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1951:50-58 "export 'uConsole' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
1959:15-31 "export 'RendererFactory2' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
2015:20-26 "export 'inject' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
2109:27-43 "export 'defineInjectable' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
2124:21-27 "export 'inject' was not found in '@angular/core'

WARNING in ./~/@angular/platform-browser/fesm5/platform-browser.js
2156:28-44 "export 'defineInjectable' was not found in '@angular/core'

ERROR in C:/Users/Documents/Projekte Visual Studio/VS Code/hello-world-app/src/app/app.module.ts (4,37): Cannot find module '@angular/material'.

ERROR in C:/Users/Documents/Projekte Visual Studio/VS Code/hello-world-app/src/main.ts (5,33): Cannot find module '@angular/material'.

ERROR in TypeError: Cannot read property 'split' of null
    at Function.RouteDef.fromString (C:\Users\Documents\Projekte Visual Studio\VS Code\hello-world-app\node_modules\@angular\compiler-cli\src\ngtools_impl.js:33:27)
    at Object.listLazyRoutesOfModule (C:\Users\Documents\Projekte Visual Studio\VS Code\hello-world-app\node_modules\@angular\compiler-cli\src\ngtools_impl.js:45:34)
    at Function.NgTools_InternalApi_NG_2.listLazyRoutes (C:\Users\Documents\Projekte Visual Studio\VS Code\hello-world-app\node_modules\@angular\compiler-cli\src\ngtools_api.js:78:39)
    at AotPlugin._getLazyRoutesFromNgtools (C:\Users\Documents\Projekte Visual Studio\VS Code\hello-world-app\node_modules\@ngtools\webpack\src\plugin.js:240:66)
    at _donePromise.Promise.resolve.then.then.then.then.then (C:\Users\Documents\Projekte Visual Studio\VS Code\hello-world-app\node_modules\@ngtools\webpack\src\plugin.js:493:24)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)

ERROR in C:/Users/Documents/Projekte Visual Studio/VS Code/hello-world-app/src/main.ts (5,33): Cannot find module '@angular/material'.

ERROR in C:/Users/Documents/Projekte Visual Studio/VS Code/hello-world-app/src/app/app.module.ts (4,37): Cannot find module '@angular/material'.

ERROR in ./src/main.ts
Module not found: Error: Can't resolve '@angular/material' in 'C:\Users\Documents\Projekte Visual Studio\VS Code\hello-world-app\src'
 @ ./src/main.ts 5:0-52
 @ multi webpack-dev-server/client?http://localhost:4200/ ./src/main.ts

ERROR in ./src/app/app.module.ts
Module not found: Error: Can't resolve '@angular/material' in 'C:\Users\Documents\Projekte Visual Studio\VS Code\hello-world-app\src\app'
 @ ./src/app/app.module.ts 13:0-56
 @ ./src/main.ts
 @ multi webpack-dev-server/client?http://localhost:4200/ ./src/main.ts
webpack: Failed to compile.


Vielen Dank

29.05.2018 - 12:18 Uhr

Das ist es ja, ich weiß nicht genau woran es liegt... Authentifizierung kann es evtl. nicht sein, aber ich weiß nicht wie ich weiter komme...

mit der Fehlermeldung kann ich auch nichts anfangen 🙁 ?(

im netz habe ich dazu auch nichts gefunden....

Meine Frage wäre z. B. brauche ich das context.IncomingMessageProperties?? Oder ist es egal das es NULL ist?

29.05.2018 - 11:46 Uhr

Die Fehlermeldung ist > Fehlermeldung:

Error reading XMLStreamReader: Unexpected character '-' (code 45) in prolog; expected '<'
at [row,col {unknown-source}]: [2,1]

29.05.2018 - 10:06 Uhr

Hallo,

ich muss einen Request an einen Service absetzen und bekomme (oder sollte bekommen) einen Response zurück als XML-Objekt.

Irgendwie klappt es mit der Authentifizierung nicht oder die EndpointAdresse stimmt nicht, ich weiß es nicht genau.

Hab einiges im Netz durchgelesen, aber irgw. bringt es mich nicht weiter.... vielleicht verstehe ich auch etwas falsch.


var httpRequestProperty = new HttpRequestMessageProperty();
httpRequestProperty.Headers[HttpRequestHeader.Authorization] = "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(client.ClientCredentials.UserName.UserName + ":" + client.ClientCredentials.UserName.Password));                
httpRequestProperty.Headers[HttpRequestHeader.ContentType] = "text/xml;charset=UTF-8";
               
var parameter = new myClass()
{
    Nr = 23,
    Typ = "test Typ"
};

var context = new OperationContext(client.InnerChannel);
using (new OperationContextScope(context))
{
    httpRequestProperty.Headers.Add(HttpRequestHeader.Host, "www.myServer.de/webservice");

    OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequestProperty;

// ab hier komm ich nicht mehr weiter.... vielleicht fehlt ja oben noch was 
// aber context.IncomingMessageProperties ist immer NULL (aber da muss doch was drin stehen, oder? Oder muss ich den Response erst absetzen und dann ist es nicht mehr null??

    MessageProperties prop = context.IncomingMessageProperties;
    RemoteEndpointMessageProperty endpoint = prop[RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty;


//zum schluss die Methode aufrufen
var requestFromService = Client.GetXMLTest(Parameter);

vom Verständnis her hätte ich gesagt, dass ich da noch was vergessen habe... den ich habe ja keinen EndpointAdresse gesetzt!? Oder verstehe ich es falsch?

Vielen Dank

22.05.2018 - 11:46 Uhr

Hallo,

kriege seit Tagen nicht die neue Version von einem Projekt (ASP.NET MVC mit VS 2017) installiert....

Immer wieder der gleiche Fehler...

Fehlermeldung:
Serverfehler in der Anwendung /.
Kompilierungsfehler
Beschreibung: Fehler bei der Kompilierung einer Ressource, die zur Verarbeitung dieser Anforderung erforderlich ist. Überprüfen Sie die folgenden spezifischen Fehlerdetails, und ändern Sie den Quellcode entsprechend.

Compilerfehlermeldung: Compilerfehler mit Fehlercode 255.

Detaillierte Compilerausgabe anzeigen:

c:\windows\system32\inetsrv>C:\inetpub\FVA\bin\roslyn\csc.exe /t:library /utf8output /nostdlib+ /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorlib.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\55439b06\27f18eeb_dae2d301\Newtonsoft.Json.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_64\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel\v4.0_4.0.0.0__b77a5c561934e089\System.ServiceModel.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Extensions\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.Extensions.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\74060902\70906deb_dae2d301\Microsoft.Web.Infrastructure.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\2b0dbd3a\04da25d4_9cf1d301\FVA.EntityData.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\f167959b\9cb790e9_dae2d301\Antlr3.Runtime.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml.Linq\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.Linq.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\2974c496\bc229eea_dae2d301\System.Web.Optimization.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.CSharp\v4.0_4.0.0.0__b03f5f7f11d50a3a\Microsoft.CSharp.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ComponentModel.DataAnnotations\v4.0_4.0.0.0__31bf3856ad364e35\System.ComponentModel.DataAnnotations.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\adc57b60\e90cc9ea_dae2d301\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\bcf45588\17a0beeb_dae2d301\WebGrease.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\50a1d30f\bca0dae9_dae2d301\EntityFramework.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Services\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.Services.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\21c71a7e\f1dbd5e9_dae2d301\EntityFramework.SqlServer.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.Activities.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_64\System.EnterpriseServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\c3ff3a2c\7ad231d7_9cf1d301\Fachverfahrensmatrix.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.DynamicData\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.DynamicData.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.ApplicationServices\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.ApplicationServices.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\331fc1be\005488ca_6403d101\JQueryUIHelpers.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\dd5e4ece\649ff9e9_dae2d301\EntityFramework.SqlServerCompact.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\c55d1d2a\2d98b3ea_dae2d301\System.Web.Helpers.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorlib.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activation\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activation.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\bd5a6fcd\853003d4_9cf1d301\FVA.DataObjects.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.WorkflowServices\v4.0_4.0.0.0__31bf3856ad364e35\System.WorkflowServices.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Data.DataSetExtensions\v4.0_4.0.0.0__b77a5c561934e089\System.Data.DataSetExtensions.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_64\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\832501c9\f1f9b5ea_dae2d301\System.Web.WebPages.Deployment.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\da7fecc3\28425feb_dae2d301\System.Data.SqlServerCe.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.IdentityModel\v4.0_4.0.0.0__b77a5c561934e089\System.IdentityModel.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\22f63b8e\df718dea_dae2d301\System.Web.Razor.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Web\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Web.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activities.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\a2e2e0d4\f1f9b5ea_dae2d301\System.Web.WebPages.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\343668d9\e75e7aea_dae2d301\System.Web.Mvc.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\assembly\dl3\c79f63c1\f1f9b5ea_dae2d301\System.Web.WebPages.Razor.dll" /out:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\App_global.asax.thaf7owx.dll" /debug- /optimize+ /warnaserror- /w:4 /nowarn:1659;1699;1701;612;618 /langversion:6 /nowarn:1659;1699;1701 "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\App_global.asax.thaf7owx.0.cs" "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\3ac38886\f77066\App_global.asax.thaf7owx.1.cs"

Versionsinformationen: Microsoft .NET Framework-Version:4.0.30319; ASP.NET-Version:4.0.30319.36393

Habe auch den reinstall über NuGet gemacht, kein Erfolg.

Weiß einfach nicht mehr weiter.

Hat jemand eine Idee woran es liegen kann?

Vielen Dank

04.05.2018 - 11:39 Uhr

Das ist der Fehler den ich bekomme:

Fehlermeldung:
System.ServiceModel.Security.MessageSecurityException: Die HTTP-Anforderung ist beim Clientauthentifizierungsschema "Basic" nicht autorisiert. Vom Server wurde der Authentifizierungsheader "Basic realm="ZVS Security Realm"" empfangen. ---> System.Net.WebException: Der Remoteserver hat einen Fehler zurückgegeben: (401) Nicht autorisiert.
bei System.Net.HttpWebRequest.GetResponse()
bei System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
--- Ende der internen Ausnahmestapelüberwachung ---

Server stack trace:
bei System.ServiceModel.Channels.HttpChannelUtilities.ValidateAuthentication(HttpWebRequest request, HttpWebResponse response, WebException responseException, HttpChannelFactory1 factory) bei System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory1 factory, WebException responseException, ChannelBinding channelBinding)
bei System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
bei System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
bei System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
bei System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
bei System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
bei System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:
bei System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
bei System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
bei ConsoleDoSV.HSWebBeService.Be.anfragenNeueGeaenderte Be DurchHS(anfragenNeueGeaenderteBeDurchHSRequest1 request)
bei ConsoleDoSV.HSWebBeService.BewerbungenServiceClient.ConsoleDoSV.HSWebBeService.BewerbungenService.anfragenNeueGeaenderteBeDurchHS(anfragenNeueGeaenderteBeDurchHSRequest1 request)
bei ConsoleDoSV.HSWebBeService.BeServiceClient.anfragenNeueGeaenderteBeDurchHS(anfragenNeueGeaenderteBeDurchHSRequest anfragenNeueGeaenderteBeDurchHSRequest)

und so rufe ich es auf:


                var client = new HSWebBeService.BeServiceClient();
                client.ClientCredentials.UserName.UserName = "****";
                client.ClientCredentials.UserName.Password = "******";
                client.Open();

                 var parameter = new anfragenNeueGeaenderteBeDurchHSRequest()
                {
                    serviceverfahren = new Serviceverfahren()
                    {
                        jahr = 2022,
                        semester = Semester.SS
                    },
                    vermittlungsprozessTyp = VermittlungsprozessTyp.Koordinierung,
                    version = "3",
                    hochschulnummer = "6789",
                    abschlussSchluessel = "BSc_BWL",
                    vermittlungsprozessNr = 1
                };

                client.anfragenNeueGeaenderteBeDurchHS(parameter);


04.05.2018 - 09:37 Uhr

SOAP Dienste können einfach als Referenz "Add Service" im Projekt-Kontextmenü automatisch erzeugt/hinzugefügt werden.
Dabei musst Du einen ServiceNamen angeben, der nachher als Instanz im Code verwendet werden kann.


>

Gilt aber nur für XML Dienste wie SOAP.

Genau so habe ich es auch gemacht.... die verschiedenen Methoden sehe ich auch, nur kann ich keine aufrufen...

04.05.2018 - 09:33 Uhr

Danke für die Tipps... das hat bei mir leider nicht funktioniert...

ich habe nochmal geschaut und ich habe mehrere xsd Dateien die als Parameter für den Aufruf einer Methode aus dem Service dienen. jetzt wollte ich die xsd einlesen um durch diese die nötigen Parameter zu setzten und zu übergeben...

Vor ein paar Jahren, hatte ich mal eine xsd Datei als c#-Class automatisch generieren lassen (ich weiß echt nicht mehr wie das ging) und konnte da verschiedene Properties editieren....

Vielleicht liegt es an diesen xsd Dateien!?

Und vielleicht weiß, ja jemand ob ich und wie so eine xsd Datei einlesen kann???

02.05.2018 - 10:54 Uhr

Hallo zusammen,

vielleicht kann mir jemand helfen. Ich komme mit dem einbinden eines Dienstes nicht weiter. Hab auch dazu keine Doku, muss also mit frei schnauzte etwas funktionstüchtiges hinkriegen.

Ich habe einen Diest wsdl, dieser läuft auf dem Server https:\servier03.testumgebung.de\hs\webservice (ausgedachte Adresse)... es läuft mit SOAP.

Es gibt insgesamt 5 verschiedene Services die auf dem Server laufen, im Prinzip brauche ich nur 2 von denen. Es wird alles in XML Struktur und XSD Schemas gemacht.

Mein Problem ist es, wo ich nicht weiterkomme, ist, dass der ServiceXY.wsdl eine XML erwartet die Haederdateien hat... so wie ich es verstehe die xsd-schemas und jede xsd oder XML Datei braucht den Benutzer und das Password, diese muss sich jedesmal mit übergeben, es kann nicht zwischengespeichert werden.

Hab die Datei Service.wsdl mit dem Tool SoapUp geöffnet, dieser zeigt mir auch die verschiedenen xsd's als Parameterübergabe...

Wie implementiere ich es aber im C#??? Ich habe keine Möglichkeit dem Service die Parameter als variable zu übergeben.

Welche Klassen muss ich benutzen und wie übergebe ich die xsd als Parameter dem Service??

Ich weiß nicht ob das, was ich geschrieben habe auch nachvollziehbar ist... wenn nicht, dann entschuldige ich mich, dass ich für mich Neuland und ich verstehe es nicht ganz wie es funktioniert.

Vielen Dank im Voraus

20.03.2018 - 11:21 Uhr

Ich hab den Fehler gefunden 😃

Im View muss es wie folgt aussehen:

<script type="text/javascript">

    $(document).ready(function ($) {

        $('h2').helloWorld('Hu hu');

    });

</script>

Vielen Dank

20.03.2018 - 09:44 Uhr

Hallo.

ich versuche ein Plugin zu schreiben. Ich habe eine Funktion die immer das gleiche macht. Diese wird aus verschiedenen Seiten aufgerufen....
Jetzt wollte ich gerne ein Plugin schreiben, aber irgw. klappt es nicht.

Ich habe ein neues Projekt erstellt ASP.Net

Habe eine neue Datei erstellt
.../Scripts/jquery.mytest.js


(function ($) {

    $.fn.helloWorld = function (customText) {

        return this.each(function () {
            $(this).text(customText);
        });

    }

})(jQuery);

Im View - Index



<br /><br />
<h2>Hallo, das ist ein Test!</h2>


<script src="~/Scripts/jquery-3.3.1.min.js"></script>
<script src="~/Scripts/jquery.mytest.js"></script>

<script type="text/javascript">

    $(document).ready(function () {

        $('h2').helloWorld('Hu hu');

    });

</script>

Ich weis nicht was ich falsch mache, aber es funktioniert nicht bekomme immer wieder den Fehler:> Fehlermeldung:

jquery-3.3.1.min.js:2 jQuery.Deferred exception: $(...).helloWorld is not a function TypeError: $(...).helloWorld is not a function
at HTMLDocument.<anonymous> (
>
)
at l (
>
)
at c (
>
) undefined

jquery-3.3.1.min.js:2 Uncaught TypeError: $(...).helloWorld is not a function
at HTMLDocument.<anonymous> ((index):54)
at l (jquery-3.3.1.min.js:2)
at c (jquery-3.3.1.min.js:2)

Hab diverse Beispiele aus dem Netz ausprobiert, aber alles ohne Erfolg.

Vielen Dank

04.10.2017 - 16:58 Uhr

Ich bin Desktop-Entwicklerin, aber habe jetzt das Projekt bekommen diese Sch* Web-Anwendung zu schreiben.... wenn ich könnte würde ich gerne (super gerne) eine Schulung machen, nur mein Schef ist da einer anderer Meinung... somit muss ich aus dem was ich habe, etwas machen.

Soll ich dann am besten die geänderten Daten sofort in DB speichern? Und Änderungen somit direkt aus DB aufrufen, ohne zwischen zu speichern?

04.10.2017 - 16:42 Uhr

So sieht der Controller aus.....



    public class HomeController : Controller
    {
        private static SgViewModel _viewModel = new SgViewModel ();

        [HttpGet]
        public ActionResult Laden(int id, string kp, string wp)
        {
            var rusult = _viewModel.SgLaden(id, kp, wp);     
            return View("StzView", _viewModel);
        }

        [HttpGet]
        public ActionResult InsertTgData(int nr)
        {
            _viewModel.TgVM.AddTopRow(nr + 1);
            return PartialView("TgOrdnungView", _viewModel.TgsViewModel );
        }
        
        [HttpGet]
        public ActionResult DeleteTgData(int nr)
        {
            _viewModel.TgVM.DeleteTopRow(nr);
            return PartialView("TgOrdnungView", _viewModel.TgsViewModel );
        }
        
    ...

    }


das ViewModel ...



private int SiD { get; set; }

internal void AddTopRow(int rIdx)
{
    var neu = new TgListe()
    {
        ID = SiD,
        Nr = rIdx
     };
     Tgpunkte.Add(neu);
     AenderungVorhanden = true;
}

Ich könnte mir vorstellen, dass ich das _viewModel überschreibe jedes mal wenn ich eine neue Seite aufrufe.... ?!

04.10.2017 - 16:20 Uhr

Wie kriege ich die Objekte sauber von einander getrennt, dass ich auch zwei Seiten aufrufen kann? Ohne das die sich gegenseitig überschreiben?

04.10.2017 - 16:16 Uhr

ja, ich denke das ist es auch... nur ich sehe vor lauter Bäume den Wald nicht mehr

04.10.2017 - 16:12 Uhr

ich kann hier schlecht das ganze Projekt reinstellen....

ich habe eine Anwendung, da kann ich z. B. sagen ...

  1. um 8:00 Telefonat mit XY geführt.
  2. um 10:00 Telefonat mit Frau T geführt
    usw. beliebig viele Daten

Diese Daten Lade ich aus einer DB mit Hilfe des Entity Frameworks. Das Model TgsViewModel hält die Daten für mich, das ich diese sehen, ändern, löschen oder etwas hinzufügen kann.

Erst wenn ich auf den Butten Speichern klicke, werden die Daten zurück in die DB geschrieben. Der Anwender kann ja auch sagen, dass alles was er eigegeben hat misst war und er es nicht speichern will.

D. h. ich muss die Daten lokal im Cache zwischen speichern bis der Anwender sagt, jetzt speichern.

Rufe ich aber zwei mal die Seite auf für München und Leipzig (nur ein Beispiel) dann kommt ja der misst mit den Daten...

.... wenn ich also in der View 1 einen neue Zeile hinzufüge und dann versuche in der View 2 auch einen neue Zeile hinzufügen, dann übernimmt der View 2 alles was der View 1 hat.

04.10.2017 - 15:51 Uhr

Ich hoffe es ist jetzt verständlicher, was ich meine.

04.10.2017 - 15:02 Uhr

Hallo,

Ich habe eine Webseite, diese verwendet @Models


@model PRG.Client.Models.ViewModel.Tops.TgsViewModel

<table >
@foreach (var asset in Model.TgListe)
{
    <tr>
        <td>
            <div id="txtInput">                        
                @Html.TextAreaFor(m => asset.Betreff, new { @metadata = asset.Nr, style = "width:100%", @class = "form-control betreff_" + asset.Nr })
            </div>
        </td>
    </tr>
 }
</table>

in dieser Liste kann ich Werte verändern hinzufügen oder entfernen.

Jetzt habe ich festgestellt, dass wenn ich die Seite zweimal nebeneinander aufrufe mit zwei verschiedenen Parametern ....
Seite im Chome 1. localhost:63505/Sg/Laden/?id=1127&kp=Mini%3A%&wp=Legi%202016[/url]
Seite im Chome 2. localhost:63505/Sg/Laden/?id=1133&kp=Mini%3A%&wp=Legi%202016[/url]

.... wenn ich also in der View 1 einen neue Zeile hinzufüge und dann versuche in der View 2 auch einen neue Zeile hinzufügen, dann übernimmt der View 2 alles was der View 1 hat.

Mein Gedanke war, dass der Client nur ein Objekt hat, und wenn sich da was ändert, dann ändert es sich natürlich überall.

Muss ich hier session basiert arbeiten? Pro Session eine Seite und somit nur ein Objekt?

11.09.2017 - 11:40 Uhr

Hallo,

Ich möchte gerne das Password zur der DB verschlüsseln.

Web.config:


 <connectionStrings>
    <add name="TEntities" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=tedb;initial catalog=DaTa;user id=sa;password=NxBYQy0fQ+1Pys0DF64t/w==;MultipleActiveResultSets=True;App=EntityFramework&quot;"
      providerName="System.Data.EntityClient" />
  </connectionStrings>

wenn ich die Daten aus der DB auslese (Entity Framework 6) ...


using (TEntitiesdb = new TEntities())
{
... Daten aus db hollen
}

In der ...


public partial class TEntities : DbContextpublic TEntities()
            : base("name=TEntities")
{
PasswordEncrypting();
}


public void PasswordEncrypting()
        {
            System.Configuration.Configuration rootWebConfig = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
            System.Configuration.ConnectionStringSettings connString;
            if (0 < rootWebConfig.ConnectionStrings.ConnectionStrings.Count)
            {
                connString = rootWebConfig.ConnectionStrings.ConnectionStrings["TEntities"];
                if (null != connString)
                {
                    var password = connString.ConnectionString.Substring(connString.ConnectionString.IndexOf(";password=") + 10, connString.ConnectionString.Substring(204 + 10).IndexOf(";"));

                    var testDecr = Decrypt(password, "test");
                    var neuesConnString = connString.ConnectionString.Replace(";password=" + password + ";", ";password=" + testDecr + ";");
                    connString.ConnectionString = neuesConnString;
                    
                    rootWebConfig.Save();
                }
            }
        }

Es funktioniert soweit auch alles, nur nicht 100% so wie ich es brauche.

Durch das rootWebConfig.Save(); wird die Web.config überschrieben und das Password steht wieder unverschlüsselt da. Wie muss ich das machen, damit das Password unverschlüsselt zur Verfügung stehen oder das ich die Web.config überschreiben muss??

Vielen Dank

14.07.2017 - 15:13 Uhr

Das mit der Isolation der BL pro User kommt mir sehr schlüssig vor, hast du einen schlauen link vielleicht für mich?

Das Projekt habe ich so ähnlich wie im ... ASP.NET MVC - Arbeiten mit View- und SubmitModels aufgebaut.

Aber jedes mal wenn ich versuche (vielleicht ist es auch falsch!?) Javascript/JQuery/Ajax vom HTML zu trennen, z.B. in einer xy.js zu verlagern, dann funktionieren bestimmte Sachen nicht mehr auf der Seite wie vorher. Und ich weiß auch nicht wieso 😃

14.07.2017 - 14:17 Uhr

Hallo zusammen.

Seit ca. 8 Monaten bin ich von Windows Forms und WPF auf ASP.NET (Arbeitstellenwechsel) umgestiegen.

Seit März entwickle ich in einem Projekt, was recht übersichtlich ist. Aber mir trotzdem Kopfschmerzen bereitet.

Die Schwierigkeiten die ich dabei habe sind die ganzen Technologien die hier eine Rolle mitspielen: JQuery, Javascript, HTML, SCC und Ajax. Das Grundprinzip verstehe ich, aber dass alles unter einen Hut zu packen.... oder es rund zu kriegen.....

Habe mich die Tage nach einem Buch umgeschaut... War auch irgw. nicht das richtige, denn die guten Bücher sind alle auf Englisch und mein Englisch ist nicht besonders gut um so ein schwieriges Thema zu verstehen. Die Bücher auf Deutsch sind von 2014 und Co.

Habt ihr einen Rat/Tip für mich wie ich die Lücken decken kann?

  • Webentwicklung (abstrakte denken) (was ist es genau? was ist der Unterschied Web und WPF/Win Forms?)
  • Ajax (wie und wo) (kann ich komplett mit Ajax programmieren oder muss ich noch etwas beachten)
  • JQuery (wo sind evtl. die Nachteile)
  • In wieweit kann ich das Prinzip des MVVM-Models anwenden?
  • Views mit Bindungselementen (gibt es in der WebEntwicklung wie bei WPF?)
  • In wieweit kann ich die Logik von der View trennen und geht es überhaupt?

Das sind so die Hauptfragen, die mich am meisten beschäftigen.

Vielen Dank

13.06.2017 - 13:30 Uhr

Die Verwiegung ist groß :0

Das ist ein wirklich sehr umfangreiches Thema....

Ich habe jetzt versucht HTML und JavaScript von einander zu trennen.
Soweit funktioniert das auch schon, aber .... noch einmal zu Verständnis.... wie komme ich denn jetzt in meinen Cotroller, wenn ich die Änderungen abspeichern möchte???

Der JavaScript-Code ist jetzt in einer MyJS.js


(function ($) {

    $('[data-page-name="BearbeitunsstatusViewModel"] div#div_img_del img').on('click', function () {

        (hier ???????????????)
        $.ajax({
            type: "GET",
            url: "@(Url.Action("Action", "Controller"))",
            .......
    });
   
}(jQuery));


oder sollte ich an der Stelle gar nicht mit Ajax arbeiten?

13.06.2017 - 12:04 Uhr

du hast recht. Das von einander zu trenne macht ja sinn, ich komme da aber mit meinem Wissen nicht weiter....

eine Teilansicht von mir, sieht wie folgt aus...


@model SIM.Client.Models.ViewModel.Sitzung.Bearbeitungsstatus.BearbeitunsstatusViewModel

<div id="bearbeitungsstatus">
    <table id="assets-data-table-status" class="table table-striped" style="width:220px;">
        <thead>
            <tr>
                <th style="width:20px;"></th>
                <th>Bearbeitungsstatus</th>
                <th style="width:20px;">
                    <div id="div_img_addtop">
                        <img class="image-menue" id="status-img-add" src="/Content/Images/ZoomIn_anthrazit.png" onclick="AddBearbeitungsstatus()" />
                    </div>
                </th>
            </tr>
        </thead>
        <tbody>
            @{int x = 0;}
            @foreach (var asset in Model.Bearbeitunsstatus.Where(w => w.Nr >= Model.NavigationVM.StartIndexListe).OrderBy(b=> b.Nr).Take(10))
            {
                x++;
                <tr class="tr_bl_@x" onmousemove="SelectedTableRowMove('tr_bl_@x')" onmouseout="SelectedTableRowOut('tr_bl_@x')">
                    <td>
                        <div id="div-img-nr-@asset.Nr" class="pad"><b>@asset.Nr</b></div>
                    </td>
                    <td>
                        <div>
                            @Html.DropDownListFor(m => asset.StatusID, new SelectList(Model.StatusList, "StatusID", "Bezeichnung", asset.StatusID), new { @class = "form-control asset-bearbeitungsstatus-" + asset.Nr, onchange="OnChangeBearbStatus(" + asset.Nr + ")" })
                        </div>
                    </td>
                    <td>
                        <div id="div_img_del">
                            <img class="image-menue" src="/Content/Images/Delete_anthrazit.png" onclick="DeleteBearbeitungsstatus(@asset.Nr)"  />
                        </div>
                    </td>
                </tr>
            }
        </tbody>
    </table>
          
</div>

<script type="text/javascript">

    function AktualisiereView(viewObject, acName) {
        $.ajax({
            url: acName,
            dataType: "json",
            type: "get"
        }).done(function (data) {
            $("#" + viewObject).html(data);
        }).fail(function () {
            alert("Fehler: es wurde ein Fehlerausgelöst!");
        });
    }

    function AktualisiereBearbeitungsstatusView() {
        AktualisiereView('div-bearbeitungsstatus', "@(Url.Action("BearbeitungsstatusRefreshView", "Sitzung"))");
        AktualisiereView('div-navigation-bearbeitungsstatus', "@(Url.Action("NavigationRefreshView", "Sitzung"))?lid=bearbeitungsstatus");
    }

    function OnChangeBearbStatus(anr) {
        $.ajax({
            type: "GET",
            url: "@(Url.Action("ChangedBearbeitunsstatusData", "Sitzung"))",
            data: { nr: anr, id: $('.asset-bearbeitungsstatus-' + anr).val() },
            success: function (data) {
                if (data.success) {
                    AktualisiereView('div-bearbeitungsstatus', "@(Url.Action("BearbeitungsstatusRefreshView", "Sitzung"))");
                }
            }
        });
    }

    function AddBearbeitungsstatus() {
        $.ajax({
            type: "POST",
            url: '@Url.Action("InsertBearbeitunsstatusData", "Sitzung", null, Request.Url.Scheme, null)',
            cache: false,
            success: function (data) {
                alert("jetzt...");
                if (data.success) {
                    AktualisiereBearbeitungsstatusView();
                }
            }
        });
    }

    function DeleteBearbeitungsstatus(assetnr) {
        $.ajax({
            type: "GET",
            url: "@(Url.Action("DeleteBearbeitunsstatusData", "Sitzung"))",
            data: { nr: assetnr },
            success: function (data) {
                if (data.success) {
                    AktualisiereBearbeitungsstatusView();
                }
            }
        });
    }
    
</script>

Der Controller...


public ActionResult BearbeitungsstatusView()
        {
            return PartialView();
        }

        [HttpGet]
        public ActionResult BearbeitungsstatusRefreshView()
        {
            return PartialView("BearbeitungsstatusView", _viewModel.GVM.BearbeitunsstatusVM);
        }

        [HttpGet]
        public ActionResult DeleteBearbeitunsstatusData(int nr)
        {
            bool addSuccess = _viewModel.GVM.BearbeitunsstatusVM.DeleteStatusRow(nr);
            return Json(new { success = addSuccess }, JsonRequestBehavior.AllowGet);
        }
        
        [HttpGet]
        public JsonResult InsertBearbeitunsstatusData()
        {
            bool addSuccess = _viewModel.GVM.BearbeitunsstatusVM.AddStatusRow();
            return Json(new { success = addSuccess }, JsonRequestBehavior.AllowGet);
        }

        [HttpGet]
        public JsonResult ChangedBearbeitunsstatusData(int nr, int id)
        {
            _viewModel.GVM.BearbeitunsstatusVM.OnChanged(nr, id);
            return Json(new { success = true }, JsonRequestBehavior.AllowGet);
        }

das Model....


public class BearbeitunsstatusViewModel : BaseViewModel
    {
        EntityManager UM = new EntityManager();

        public BearbeitunsstatusViewModel(int gID)
        {
            GID = gID;
            StatusList = UM.TableToList.Status;
            Bearbeitunsstatus = UM.BearbeitunsstatusLaden(gID);
        }

        private int GID { get; set; }
        
        public List<StatusListe> StatusList { get; set; }
        
        public List<BearbeitungsstatusListe> Bearbeitunsstatus { get; set; }

        internal bool AddStatusRow()
        {
            var nextStatusID = 0;
            if (Bearbeitunsstatus.Count > 0)
            {
                var maxNr = Bearbeitunsstatus.Where(w=> w.StatusID > 0).Max(m => m.Nr);
                var istID = Bearbeitunsstatus.First(w => w.Nr == maxNr).StatusID;
                var sortierung = StatusList.First(w => w.StatusID == istID);
                var next = StatusList.Where(w => w.Sortierung > sortierung.Sortierung).OrderBy(o => o.Sortierung);
                nextStatusID = next.Count() > 0 ? next.First().StatusID : 0;
                nextStatusID = Bearbeitunsstatus.Count(w => w.StatusID == nextStatusID) == 0 ? nextStatusID : 0;
            }
            else
                nextStatusID = StatusList.Where(w => w.Sortierung > 0).OrderBy(w => w.Sortierung).First().StatusID;

            var neu = new BearbeitungsstatusListe();
            neu.GID = GID;
            neu.ID = 0;
            neu.StatusID = nextStatusID;
            neu.Nr = Bearbeitunsstatus.Count > 0 ? Bearbeitunsstatus.Max(w => w.Nr) + 1 : 1;
            Bearbeitunsstatus.Add(neu);
            AenderungVorhanden = true;
                        
            return true;
        }

        internal bool DeleteStatusRow(int nr)
        {
            var d = Bearbeitunsstatus.FirstOrDefault(w => w.Nr == nr);
            Bearbeitunsstatus.Where(w => w.Nr > nr).ToList().ForEach(i => i.Nr = i.Nr - 1);
            if (d != null)
            {
                AenderungVorhanden = true;
                Bearbeitunsstatus.Remove(d);
                
                return true;
            }
            else return false;
        }

        internal void OnChanged(int nr, int id)
        {
            foreach (var b in Bearbeitunsstatus.Where(w => w.Nr == nr))
            {
                b.StatusID = Bearbeitunsstatus.Count(w => w.StatusID == id) == 0 ? id : 0;
                AenderungVorhanden = true;
            }
        }
    }

13.06.2017 - 11:19 Uhr

Ich bin neu im asp, habe vorher mit WPF und Windows Forms gearbeitet.

Ich habe keine konkrete Fehlermeldung.... mein Problem ist wirklich, dass das Event (klicken auf das Bild) nur einmal ausgeführt wird und nur im Internet Explorer. Im Chrome, Firefox und Edge funktioniert es.

Vielleicht habe ich das ganze falsch angefangen. Im Netz gibt's 1000 Sachen über MVC und ASP.net aber ich habe für mich keinen konkreten lernreichen Beispiel gefunden, nach welchem ich mein Projekt aufbauen konnte.

Habe also versucht, dass so zu entwickeln das ich eine View-Model-Data (ähnlich wie im WPF) habe.

Somit verwende ich HTML, JavaScript und Ajax aufrufe zum Controller. Wo ich dann die Aktualisierungen /Änderungen in meinem Model vornehme und das Model im View dann aktualisiere.

Wenn du vielleicht einen link hast, wo das mit mvc beschrieben ist, wie man es heutzutage macht, wäre ich dir echt dankbar dafür.

Vielleicht löst sich ja mein Problem auch, wenn ich es anders (richtig) mache.

13.06.2017 - 10:23 Uhr

Hallo Abt,

hab's ausprobiert wie es in der jQuery Docu steht, aber es scheint nicht zu helfen. Das Problem besteht, ich kann es nur einmal ausführen, danach funktioniert es nicht mehr.

Vielleicht habe ich einen falschen Ansatz:

Ich setzte das MVC-Model an, sprich ich habe ein Model in der ich eine Liste von Daten. Diese werden in der View per foreach-Schleife zur anzeige gebracht....


...
            @{int x = 0;}
            @foreach (var asset in Model.ListeABC.OrderBy(b=> b.Nr).Take(10))
            {
                x++;
                <tr class="tr_bl_@x" onmousemove="SelectedTableRowMove('tr_bl_@x')" onmouseout="SelectedTableRowOut('tr_bl_@x')">
                    <td>
                        <div id="div-img-nr-@asset.Nr" class="pad"><b>@asset.Nr</b></div>
                    </td>
                    <td>
                        <div>
                            @Html.DropDownListFor(m => asset.StatusID, new SelectList(Model.StatusList, "StatusID", "Bezeichnung", asset.StatusID), new { @class = "form-control asset-bs-" + asset.Nr, onchange="OnChangeBearbStatus(" + asset.Nr + ")" })
                        </div>
                    </td>
                    <td>
                        <div id="div_img_del">
                            <img class="image-menue" src="/Content/Images/Delete_anthrazit.png" onclick="Delete(@asset.Nr)"  />
                        </div>
                    </td>
                </tr>
            }
    ....

Wenn ich dann auf das Delete-Bild klicke sollte der Eintrag aus der Liste im Model gelöscht werden. Das habe ich mit der Funktion


function OnFunctionTest(Id) {
        $.ajax({
            type: "GET",
            url: "@(Url.Action("ChangedABC", "Home"))",
            data: { nr: Id },
            success: function (data) {
                if (data.success) {
                    AktualisiereView('div-xyz', "@(Url.Action("RefreshView", "Home"))");
                }
            }
        });
    }

umgesetzt.

Vielleicht gibt es ja einen anderen Weg, bin auch noch nicht solange in der ASP-Programmierung drin. Vielleicht habe ich deswegen Probleme!?

Wenn jemand vielleicht einen bessern Ansatz kennt???

Ich bin für jeden Vorschlag dankbar, denn ich weiß einfach nicht mehr weiter.

13.06.2017 - 08:47 Uhr

Hi,

über ein Bild wird das click-event ausgelöst...


<div id="div_img_del">
    <img class="image-menue" src="/Content/Images/Delete.png" onclick="OnFunctionTest(55)"  />
</div>

Vielen Dankl

12.06.2017 - 14:19 Uhr

Hallo,

ich habe eine Web-Applikation.

Alles läuft einwandfrei unter Chrome, Firefox, Edge. Aber Internet Explorer macht Probleme.... es ist aber wichtig das es im IE läuft 😦

wenn ich auf einen Button klicke sollte eine function angesprochen werden...


function AktualisiereView(viewObject, acName) {
        $.ajax({
            url: acName,
            type: "get"
        }).done(function (data) {                
            $("#" + viewObject).html(data);
        }).fail(function () {
            Fehler("Fehler: es wurde ein Fehlerausgelöst!");
        });
 }

function OnFunctionTest(Id) {
        $.ajax({
            type: "GET",
            url: "@(Url.Action("ChangedABC", "Home"))",
            data: { nr: Id },
            success: function (data) {
                if (data.success) {
                    AktualisiereView('div-xyz', "@(Url.Action("RefreshView", "Home"))");
                }
            }
        });
    }

... das ist was ausgeführt werden soll ....
IE führt es nur einmal durch, auch wenn ich dann noch 100 mal auf den Button klicke, passiert nix...

Wenn ich das Element untersuche (F12), dann ändert sich der Code im HTML-Tag ...

function OnFunctionTest(Id) {
        $.ajax({
            type: "GET",
            url: "/Home/ChangedABC",
            data: { nr: Id },
            success: function (data) {
                if (data.success) {
                    AktualisiereView('div-xyz', "/Home/RefreshView");
                }
            }
        });
    }

Weiß jemand wieso es nicht mehr funktioniert wenn es einmal ausgeführt wurde???

26.04.2017 - 09:43 Uhr

wollte das EF deinstallierten und dann neu installieren... wollte das Projekt aber so nicht haben......

Hab dann ein neues Projekt angelegt das EF 6 installiert und jetzt funktioniert es.

Ich weiß nicht woran es lag. Kann vielleicht sein, dass ich etwas installiert habe (NuGet) wodurch sich etwas gegenseitig verschossen hat.

Weiß auch nicht

Vielen Dank!!!!

26.04.2017 - 09:03 Uhr

Hallo,

habe seit zwei Tagen das Problem, dass ich mein Projekt nicht mehr im Release Modus kompilieren kann....

Fehlermeldung:
Fehler CS0246 Der Typ- oder Namespacename "DbContext" wurde nicht gefunden (fehlt eine using-Direktive oder ein Assemblyverweise?) XYZ.EntityData C:\xxx\Entity Framework für MSSQL DB\XYZEntityDataModel.Context.cs 9 Aktiv
Fehler CS0115 "XYZEntitiesContext.OnModelCreating(DbModelBuilder)": Es wurde keine passende Methode zum Überschreiben gefunden. XYZ.EntityData C:\xxx\Entity Framework für MSSQL DB\XYZEntityDataModel.Context.cs 16 Aktiv

und im Debug Modes funktioniert alles.

Vielleicht hat ja jemand eine Idee woran das liegen kann???

Vielen Dank

24.04.2017 - 12:39 Uhr

Danke. Hab mir schon gedacht, dass es nicht so einfach ist....

24.04.2017 - 09:36 Uhr

Hallo,

ich brauche ein paar Tipps....

Ich benutze eine MSSQL und ein ASP.NET-Projekt. Die Verbindung läuft mit Entity Framework 6.

Meine Frage: der Connection string steht bei mir noch in der Web.config.
Wirklich Sicher ist es ja nicht. Was macht Ihr?? Verschlüsselt Ihr den String oder lagert Ihr die Daten aus oder was macht Ihr?

Ich weiß noch nicht wie ich es am besten angehen soll....

Vielen Dank im Voraus

07.04.2017 - 11:31 Uhr

Ich habe das schon mit den Treibern von Microsoft und von Oracle versucht, dass funktioniert trotzdem nicht.

Ist die App.config vielleicht falsch????


<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="entityFramework"
      type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
      requirePermission="false"/>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="oracle.manageddataaccess.client"
      type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="v13.0"/>
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="Oracle.ManagedDataAccess.Client"
        type="Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices, Oracle.ManagedDataAccess.EntityFramework, Version=6.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
    </providers>
  </entityFramework>
  <connectionStrings>
    <add name="OracleDbContext" providerName="Oracle.ManagedDataAccess.Client"
      connectionString="User Id=oracle_user;Password=oracle_user_password;Data Source=oracle"/>
    <add name="EntitiesContext"
      connectionString="metadata=res://*/EntityDataModel.csdl|res://*/EntityDataModel.ssdl|res://*/EntityDataModel.msl;provider=Oracle.ManagedDataAccess.Client;provider connection string=&quot;DATA SOURCE=xxxxxxx:1521/DB;PASSWORD=abc;PERSIST SECURITY INFO=True;USER ID=userABC&quot;"
      providerName="System.Data.EntityClient"/>
  </connectionStrings>
  <system.data>
    <DbProviderFactories>
      <remove invariant="Oracle.ManagedDataAccess.Client"/>
      <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver"
        type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
    </DbProviderFactories>
  </system.data>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <publisherPolicy apply="no"/>
        <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral"/>
        <bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.121.2.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <oracle.manageddataaccess.client>
    <version number="*">
      <dataSources>
        <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) "/>
      </dataSources>
    </version>
  </oracle.manageddataaccess.client>
</configuration>

07.04.2017 - 09:43 Uhr

Hallo.

Ich habe ein Problem mit meinem Projekt. Es soll mit einer Oracle Datenbank laufen. Ich habe dafür das Entity Framework 6 genommen. Die Verbindung kann ich herstellen. Das Model.edmx wurde auch mit den Tabellen erstellt.

Das Problem:
Wenn Werte aus einer Tabelle haben möchte dann bekomme ich einen Fehler:


using (SimEntitiesContext db = new SimEntitiesContext()) {
    foreach (var item in db.TabelleXY) ....

Fehlermeldung:
Eine Ausnahme vom Typ "System.InvalidCastException" ist in EntityFramework.dll aufgetreten, doch wurde diese im Benutzercode nicht verarbeitet.

Zusätzliche Informationen: Das Objekt des Typs "System.Data.SqlClient.SqlConnection" kann nicht in Typ "Oracle.ManagedDataAccess.Client.OracleConnection" umgewandelt werden.

Ich habe keine Ahnung wieso!!!!

Hat jemand eine Idee wieso, oder was ich falsch mache???

Vielen Dank

28.03.2017 - 14:47 Uhr

Du hast recht... richtige Trennung....

Danke 👍 😁

28.03.2017 - 13:41 Uhr

Hallo zusammen.

Ich stehe gerade vor einem Problem und bin mir nicht sicher wie ich es am besten lösen kann, vielleicht hat ja jemand eine Idee!?

Ich habe ein Projekt XY.Client ... darin ist ein zweites Projekt eingebunden DataModelMsSQL (hier befindet sich die Datenschicht für die Datenbank. Das alles wird mit dem Entity Framework abgebildet).

Soweit funktioniert auch alles super, lesen schreiben und ändern.

Mein Problem ist....
Ich möchte jetzt anstatt der MsSql eine Oracle Datenbank einbinden und alles soll weiterhin so funktionieren wie bis jetzt.

Theoretisch ist es kein Problem, so lange das neue Projekt z. B. DataModelOracleSQL alles gleich hat wie die DataModelMsSQL ... ob das aber gut ist, bin ich mir nicht sicher.

Das zweite Problem ist, dass das Oracle Entity Framewokt mir alle Klassen in Großbuchstaben erstellt. In der MsSql habe ich groß und Kleinbuchstaben.

Was mache ich, hat jemand eine Idee.
Ich habe mir gedacht vielleicht eine Convert-Klasse zu schreiben die das alles Übersetzt, aber so aufs schnelle wüsste ich auch nicht wie ich es machen soll. Aber vielleicht gibt es ja schon etwas......

Vielen Dank
Mary

18.11.2016 - 12:40 Uhr

UPS

Habs gefunden 😃

der hier fehlte:

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>

18.11.2016 - 12:31 Uhr

Hallo,

jetzt habe ich heute versucht das ganze anders zu machen.

Ich habe versucht mit Ajax das ganze zu realisieren, aber irgendwie tut sich nichts. Fehlt mir vielleicht ein verweis oder sonstiges???

Der Code sieht folgender maßen aus:


@{
    ViewBag.Title = "Index";
}

<script>    
    $(document).ready(function () {
                
        $("input").keydown(function () {
            $("input").css("background-color", "yellow");
        });
        $("input").keyup(function () {
            $("input").css("background-color", "pink");
        });

        $("#btn1").click(function () {
            $.ajax({
                url: "/Home/Test01",
                datatype: "text",
                type: "POST",
                success: function (data) {
                    $('#testarea').html("All OK");
                },
                error: function () {
                    $("#testarea").html("ERROR");
                }
            });
        });
    });

</script>
       
<div id="testarea"></div>
<button id="btn1">Get Info</button>
<br />
<input id="cName2" name="iName2" type="text" />

17.11.2016 - 21:27 Uhr

Hallo.

ich versuche mich gerade mit ASP.NET MVC 4 auseinander zusetzen (mit ASP allgemein).

Ich möchte eine Tabelle (zwei Werte: ID und Value) in einer DropDownList anzuzeigen. Dies funktionier auch. Jetzt möchte ich aber in der DropDownList etwas eingeben und die Liste sollte dementsprechend auch gefiltert werden, nur das was zustrift.

Gibt es diese Funktion für die DropDownList??? Oder muss ich ein anderes Objekt nehmen??

Es tut mir leid, es ist wahrscheinlich sehr einfach, aber ich komme einfach nicht weiter 😃

Vielen Dank

02.07.2014 - 08:38 Uhr

Hallo roYal-TS.

Hast du das Problem gelöst??? Stehe grad vor dem gleichen Problem und weiß einfach nicht mehr weiter.

Gruß
Mary

04.09.2013 - 12:08 Uhr

So hab ich es jetzt gelöst:


XNamespace xsi = XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance");
XNamespace none = "urn:iso:std:iso:20022:tech:xsd:pain.008.002.02";

XElement root = new XElement(none + "Document",
                                         new XAttribute(XNamespace.Xmlns + "xsi", xsi.NamespaceName),
                                         new XAttribute(xsi + "schemaLocation", "urn:iso:std:iso:20022:tech:xsd:pain.008.002.02 pain.008.002.02.xsd"));
            
XElement root2 = new XElement(none + "CstmrDrctDbtInitn",
                                          new XElement("GrpHdr", [....]));

04.09.2013 - 09:24 Uhr

Hallo,

ich hab's gelöst:


            XNamespace xsi = XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance");
            XNamespace none = "urn:iso:std:iso:20022:tech:xsd:pain.008.002.02";

            XElement root = new XElement(none + "Document",
                                         new XAttribute(XNamespace.Xmlns + "xsi", xsi.NamespaceName),
                                         new XAttribute(xsi + "schemaLocation", "urn:iso:std:iso:20022:tech:xsd:pain.008.002.02 pain.008.002.02.xsd"));

Schöne Grüße

03.09.2013 - 09:11 Uhr

Hallo zusammen,

bin schon seit Tagen dabei das Problem mit dem XNamespace zu lösen, aber irgendwie bringt mich das Internet auch nicht mehr weiter.

Ich versuche eine XML-Datei zu erstellen mit folgender Struktur:


<?xml version="1.0" encoding="utf-8"?>
<Document xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:pain.008.002.02 pain.008.002.02.xsd" xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.002.02">
  <CstmrDrctDbtInitn>
    .......

Der Code:


XNamespace xsi = XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance");
            XNamespace defaultNamespace = XNamespace.Get("urn:iso:std:iso:20022:tech:xsd:pain.008.002.02");

            XElement root = new XElement(defaultNamespace + "Document",
                new XAttribute(XNamespace.Xmlns + "xsi", xsi.NamespaceName),
                new XAttribute(xsi + "schemaLocation", "urn:iso:std:iso:20022:tech:xsd:pain.008.002.02 pain.008.002.02.xsd"));

            XElement root2 = new XElement("CstmrDrctDbtInitn",
                                          new XElement("GrpHdr",
                                                       new XElement("MsgId", "MES001-20130830134810")
                                              ));

            root.Add(root2);
            root.Save(pfad);

Soweit so gut. Aber ich bekommen bei den zweiten Element immer folgendes raus:


  <CstmrDrctDbtInitn xmlns="">

Ich hoffe jemand kann mir sagen was ich falsch mache.

Danke