<p>Umpan balik Nancy 2.0.0-clinteastwood</p>

Dibuat pada 22 Des 2016  ·  8Komentar  ·  Sumber: NancyFx/Nancy

Jika Anda menemukan masalah, silakan buka masalah dan berikan informasi sebanyak mungkin, untuk membantu kami mengidentifikasi masalah Anda. Atau, jangan ragu untuk mengirimkan permintaan tarik jika menurut Anda Anda dapat membantu menyelesaikan masalah tersebut. Jika Anda membutuhkan panduan, tentang cara memulai pull-request, silakan lihat panduan kontribusi kami. Pastikan Anda tidak melewatkan pedoman gaya , saya tidak akan :D

CATATAN: Karena Nancy 2.0-clinteastwood adalah pra-rilis, Anda harus menginstal paket menggunakan sakelar -pre , yaitu install-package Nancy -pre

Harap gunakan masalah ini untuk memposting komentar yang tidak terkait langsung dengan bug atau permintaan tarik tertentu yang dilaporkan.

MELAKUKAN

Berikut ini adalah daftar tugas yang teridentifikasi yang perlu dilakukan setelah rilis 2.0.0-clinteastwood dan harus diselesaikan sebelum 2.0.0-dangermouse dirilis. Edit daftar TODO dan tambahkan item saat ditemukan, tambahkan tautan ke permintaan tarik yang dikirim untuk menutupnya

  • [x] Pastikan AsyncUsageAnalyzers itu disetel ke ketergantungan build di semua project.json dan packages.config Contoh yang benar untuk dicerminkan di sini - (pull request #2700 @jchannon
  • [x] Hapus semua file *.nuspec lama di semua proyek (termasuk Nancy) (pull-request #2658 @jchannon)
  • [x] Perbarui Nancy.Hosting.Aspnet\project.json untuk memasukkan web.config.transform dalam paket (pull-request #2661 @thecodejunkie)
  • [x] Perbarui Nancy.ViewEngines.Razor\project.json untuk memasukkan app/web.config.transform dalam paket (pull-request #2661 @thecodejunkie)
  • [ ] Perbarui Nancy.ViewEngines.Razor\project.json untuk memasukkan Nancy.ViewEngines.Razor.BuildProvider (termasuk target build) dalam paket

Perubahan yang direncanakan

  • [ ] Hapus salah satu dari Request.Cookies dan Request.Headers.Cookie lihat #2628 untuk diskusi
  • [ ] Tingkatkan sintaks dan kemampuan hook Sebelum dan Setelah #2665
  • [ ] Lihat "Masalah Kinerja Potensial dengan Nancy.Routing.Route.Invoke #2623"
  • [ ] Tambahkan dukungan konfigurasi untuk negosiasi konten. Lihat #2671 untuk diskusi tentang resolusi ekstensi otomatis
  • [ ] Perbarui infrastruktur pengujian untuk mendukung standar bersih, lihat masalah #2612 dan permintaan tarik #2628
  • [ ] Ubah sub-sistem yang tersisa menjadi asinkron, lihat permintaan tarik #2577
  • [ ] Hapus bagian terakhir dari StaticConfiguration

Batasan yang diketahui

  • Beberapa paket mungkin menginstal AsyncUsageAnalyzers sebagai dependensi. Ini harus aman untuk dihapus dan tidak akan disertakan dalam 2.0.0-dangermouse karena akan ditandai sebagai ketergantungan pembangunan di semua proyek
  • Paket Nancy.Hosting.Aspnet tidak akan menerapkan transformasi *.config `, untuk memasang hosting, Anda harus menerapkannya sendiri
  • Paket Nancy.ViewEngines.Razor tidak akan menerapkan *.config transformations` untuk menghubungkan opsi konfigurasi mesin tampilan, Anda harus menerapkannya sendiri
  • Penyedia build untuk Nancy.ViewEngines.Razor hilang dari paket NuGet, menyebabkan masalah dengan penyorotan sintaks dalam tampilan Nancy Razor
Improvement Epic

Komentar yang paling membantu

Itu karena modul dasar tidak memiliki konstruktor yang dapat dipenuhi oleh wadah IoC. Itu tidak tahu bagaimana menangani string . Jika BaseModule Tidak seharusnya dipanggil dengan sendirinya, saya sarankan Anda membuatnya abstract ...

Semua 8 komentar

Ini mengkompilasi, tetapi melempar run-time NullReferenceException :

pipelines.BeforeRequest.AddItemToStartOfPipeline((ctx, _) =>
{
    // do stuff
    // Func<NancyContext, Response>, Func<NancyContext, CancellationToken, Response>
    return null;
});

Ini bekerja:

pipelines.BeforeRequest.AddItemToStartOfPipeline((ctx, _) =>
{
    //do stuff
    // Func<NancyContext, CancellationToken, Task<Response>>
    return Task<Response>.FromResult((Response)null);
});

Butuh sedikit membenturkan kepalaku ke dinding sampai aku tahu mana yang tidak super-duper atau bahagia.

@danbarua terima kasih. Saya telah membuka https://github.com/NancyFx/Nancy/issues/2665 karena saya ingin memperbaiki hal-hal pipa segera setelah kami punya waktu untuk melihat bootstrap (yang akan terjadi segera setelah Saya telah memindahkan kami ke format csproj baru dan itu terjadi sekarang di #2720

YA CUKUR! 😄.

Kode ini memberikan pengecualian, apakah ini bug?

```C#

BaseModule kelas publik : NancyModule
{
BaseModule publik (url string): basis (url)
{
//Logika khusus
}
}

kelas publik A: BaseModule
{
publik A() : basis("urlA")
{

}

}

kelas publik B : NancyModule
{
publik B()
{

}

}


System.InvalidOperationException terjadi
HRHasil = 0x80131509
Message=Ada yang tidak beres saat mencoba memenuhi salah satu dependensi selama komposisi, pastikan Anda telah mendaftarkan semua dependensi baru dalam wadah dan periksa innerexception untuk detail selengkapnya.
Sumber=
StackTrace:
di Nancy.Bootstrapper.NancyBootstrapperBase 1.SafeGetNancyEngineInstance() at Nancy.Bootstrapper.NancyBootstrapperBase 1.GetEngine()
di Nancy.Owin.NancyMiddleware.UseNancy(opsi NancyOptions)
di Nancy.Owin.DelegateExtensions.UseNancy(Action 1 builder, NancyOptions options) at PiggyBank.Site.Startup.<>c.<Configure>b__2_0(Action 1 x) di E:visual_studiopiggy-banksourcePiggyBank.SiteStartup.cs:line 31
di Microsoft.AspNetCore.Builder.OwinExtensions.UseOwin(pembangun IApplicationBuilder, pipa Action`1)
di PiggyBank.Site.Startup.Configure(aplikasi IApplicationBuilder, IHostingEnvironment env, ILoggerFactory loggerFactory) di E:visual_studiopiggy-banksourcePiggyBank.SiteStartup.cs:baris 31

Pengecualian Batin 1:
TinyIoCResolutionException: Tidak dapat menyelesaikan jenis: Nancy.NancyEngine

Pengecualian Dalam 2:
TinyIoCResolutionException: Tidak dapat menyelesaikan jenis: Nancy.Routing.DefaultRequestDispatcher

Pengecualian Dalam 3:
TinyIoCResolutionException: Tidak dapat menyelesaikan jenis: Nancy.Routing.DefaultRouteResolver

Pengecualian Batin 4:
TinyIoCResolutionException: Tidak dapat menyelesaikan jenis: Nancy.Routing.RouteCache

Pengecualian Dalam 5:
TinyIoCResolutionException: Tidak dapat menyelesaikan jenis: BaseModule

Pengecualian Dalam 6:
TinyIoCResolutionException: Tidak dapat menyelesaikan jenis: System.String

Pengecualian Dalam 7:
TinyIoCResolutionException: Tidak dapat menyelesaikan jenis: System.Char[]

Pengecualian Dalam 8:
ArgumentNullException: Nilai tidak boleh nol.

```

Itu karena modul dasar tidak memiliki konstruktor yang dapat dipenuhi oleh wadah IoC. Itu tidak tahu bagaimana menangani string . Jika BaseModule Tidak seharusnya dipanggil dengan sendirinya, saya sarankan Anda membuatnya abstract ...

Tua:

Get["post/{id}"] = Get["old/post/{id}"] = p =>{};

Baru (2.0):

?

Dapatkan("postingan/{id}", Metode Saya);
Dapatkan("lama/postingan/{id}", Metode Saya);

Dapatkan("postingan/{id}", Metode Saya);
Dapatkan("lama/postingan/{id}", Metode Saya);

Penggunaan itu menambahkan beberapa tipuan. Saya pribadi tidak suka itu. Tidak masalah meskipun.

Mungkinkah mungkin untuk memiliki beberapa metode yang berlebihan untuk ekspresi yang lancar? contoh:

Get("post/{id}")
.Get("old/post/{id}")
.Post("whatever/{id}", p => { return HttpStatusCode.Ok });

Ekspresi alternatif

Get("post/{id}")
.Get("old/post/{id}")
.Post("whatever/{id}")
.Do(p => { return HttpStatusCode.Ok });

Saya bisa menusuk PR jika ini diinginkan

Apakah halaman ini membantu?
0 / 5 - 0 peringkat